Введение
Развитие современной техники идёт по пути все большего усложнения конструкции вновь создаваемых изделий. При их создании используются все более сложные технологии и технологические процессы. Процесс проектирования новых изделий требует привлечения и использования новых нестандартных решений. Помимо этого, потоки информации, циркулирующие в мире, который нас окружает, огромны и имеют тенденцию к увеличению. Поэтому, настоящее время характеризуется массированным внедрением информационных технологий во все сферы жизни и деятельности человека, изменением роли и места персональных компьютеров в современном обществе. Из предмета профессиональной деятельности достаточно узкого круга специалистов в области точных наук они превратились в инструмент, используемый во всех отраслях производства, науке, быту и общественной жизни. Человек, умело и эффективно владеющий технологиями и информацией, имеет другой, новый стиль мышления, иначе подходит к оценке возникшей проблемы, к организации своей деятельности. Владение информационными технологиями ставится в современном мире в один ряд с такими качествами, как знание языков и умение рассуждать.
Возрастающая роль компьютерных технологий предоставляет пользователю новые возможности, которые способны повлиять на его образование, мировоззрение, количество и качество информации, с которой он имеет дело. Для руководителей, информационные технологии влияют на качество принимаемых решений и эффективность управления.
Следствием повышения производительности вычислительной техники является и усложнение программного обеспечения, которое ведет, в свою очередь, к повышению удобства и эффективности его использования.
Благодаря последним разработкам в области программных продуктов, обрабатывать большие объемы информации становится гораздо проще. Эргономика этих программных продуктов позволяет не тратить много времени на работу с данными, различные визуальные средства их представления дают возможность составить мнение, буквально, окинув данные взглядом.
Одним из таких визуальных средств являются диаграммы – графическое представление данных, позволяющее быстро оценить соотношение нескольких величин, представляющее собой геометрическое символьное изображение информации с применением различных приёмов техники визуализации.
О них и их создании с помощью программных средств и пойдет речь в настоящей работе.
1. Выбор среды разработки
Мы живем в удивительное время, и никогда еще оно не было более благоприятным для программистов на VisualBasic. VisualBasic всегда позволял упростить процесс написания программ для системы Windows, но на его превращение в настоящий язык профессиональной разработки программ и создание среды разработки потребовались годы. С помощью VisualBasic можно по-прежнему быстро писать программы для системы Windows, но, помимо этого, теперь можно также создавать приложения типа клиент / сервер и надежные приложения управления базами данных. В последней версии VisualBasic есть некоторые усовершенствования, которые значительно расширяют возможности программистов, разрабатывающих приложения для баз данных. Даже этого было бы достаточно для рекламы VisualBasic, но последние версии предоставляют гораздо более широкие возможности.
Для написания программного продукта будет использоваться наиболее популярная версия продукта – VisualBasic 6. Данный язык подходи как новичкам в программировании, так и для подготовленных пользователей, которые могут использовать стандартные компоненты Windows, элементы управления ActiveX, ADO, RDO и др. В данную версию продукта так же включены различные средства работы с графическим интерфейсом пользователя и графического представления информации (в том числе и, необходимые нам, средства для работы с диаграммами). Исходя из всех этих достоинств, считаю выбор среды VisualBasic 6 оптимальным для поставленной задачи.
2. Выбор аппаратных средств
Для функционирования разрабатываемого программного продукта необходим компьютер, работающий под управлением операционной системы из семейства Windows. Начиная с WindowsXP, минимальными системными требованиями являются:
– процессор с частотой от 233 МГц
– оперативная память объемом от 64 Мб
– видеоадаптер с поддержкой SuperVGA (разрешение экрана 800х600, глубина цвета – 16 бит)
– жесткий диск объемом от 5 Гб
– клавиатура / мышь
Рекомендуемые системные требования для функционирования WindowsXP, под которую разрабатывается программный продукт:
– процессор с частотой от 300 МГц
– оперативная память объемом от 128 Мб
– видеоадаптер с поддержкой SuperVGA (разрешение экрана 800х600, глубина цвета – 16 бит)
– жесткий диск объемом от 5 Гб
– клавиатура / мышь.
3. Описание интерфейса пользователя и возможностей программы
Разрабатываемый в ходе данной курсовой работы программный продукт предназначен для демонстрации возможностей VisualBasic по работе с диаграммами.
Общий вид главной формы программы приведен на рисунке 1.
При запуске программы, компонент MSFlexGrid заполняется списком товаров и случайными значениями цены на эти товары.
На форме присутствуют четыре кнопки, предназначенные для различных операций с этим списком товаров, а также кнопка закрытия формы и сохранения полученной диаграммы.
Рисунок 1. Общий вид главной формы программы
Кнопка «Случайные цены», как следует из названия, заполняет таблицу случайными значениями стоимости.
Кнопка «Упорядочить» приводит к упорядочиванию списка товаров по цене (пример на рисунке 2).
Нажатие на кнопку «Итого» приведет к подсчету суммы стоимостей всех товаров. Данная сумма будет отображаться в строке «Всего» таблицы.
Двойной клик мыши на любую ячейку стоимости товара приведет к открытию окна редактирования стоимости (см. рисунок 3).
Данный диалог также предусматривает проверку правильности ввода. Если будет введено нечисловое значение, оно будет преобразовано в ноль. Если значение не будет введено или будет тем же, то никаких изменений не произойдет.
Рисунок 2. Список товаров, упорядоченный по цене
После нажатия на кнопку «Диаграмма», данные из таблицы отобразятся в компоненте MSChart в виде диаграммы с соответствующими данными.
С помощью переключателей можно выбирать тип диаграммы:
– Плоская гистограмма (рисунок 4)
– Плоский график (рисунок 5)
– Объемная гистограмма (рисунок 6)
– Объемный график (рисунок 7)
Рисунок 3. Окно редактирования стоимости товара
Рисунок 4. Плоская гистограмма
Полученную диаграмму мы можем сохранить, нажав кнопку «Сохранить диаграмму». В открывшемся окне (приведено на рисунке 8), мы видим еще один пример диаграммы. Данная круговая диаграмма отображает количество занятого и свободного пространства на выбранном диске.
При выборе диска из выпадающего списка, обновляется информация в диаграмме, а также информация в подписи к диаграмме, содержащая точный объем свободного пространства на диске, в списке каталогов отображается существующая структура папок на этом диске.
Рисунок 5. Плоский график
Рисунок 6. Объемная гистограмма
После выбора нужного диска, двойным щелчком мыши выбирается нужная папка.
Нажатие на кнопку «Ок» запускает процедуру сохранения изображения, в которой подбирается имя для файла диаграммы. Если на диске достаточно места и подобрано имя для файла, он будет сохранен в выбранную папку, после чего будет выдано сообщение об успешном сохранении.
В случае, когда из выпадающего списка выбран неверный диск (например, дисковод без диска), будет выдано сообщение о том, что диск недоступен (см. рисунок 9).
Рисунок 7. Объемный график
Если в данном окне нажать кнопку «Отмена», то оно закроется, и диаграмма сохранена не будет.
На главной форме также присутствует кнопка «Закрыть», которая закрывает приложение.
4. Исходный код основных модулей программы
Ниже представлен код модуля, содержащего все процедуры, используемые в программе:
Option Explicit
' импортированныефункции
Private Declare Function PathFileExists Lib «shlwapi.dll» Alias «PathFileExistsA» _
(ByVal pszPath As String) As Long
' переменные уровня проекта
Public Price(8) As Currency ' Массив цен на продукты
Public Name_Tovar(8) As String ' Массивназванийпродуктов
Public Sub Summa()
' суммаэлементовсписка
Dim i As Integer
Dim Sum As Currency
Sum = 0
' цикл подсчета суммы стоимости всех товаров
For i = 0 To 7
Form1.MSFlexGrid1. Col = 1
Form1.MSFlexGrid1. Row = i + 1
Price(i) = Val (Form1.MSFlexGrid1. Text)
Form1.MSFlexGrid1. Text = Format$(Price(i), «#0.00»)
Sum = Sum + Price(i)
Nexti
' вывод суммы в строку «Всего»
Form1.MSFlexGrid1. Col = 1
Form1.MSFlexGrid1. Row = 9
Form1.MSFlexGrid1. Text = Format$(Sum, «#0.00»)
End Sub
PublicSubColumn_Name()
' процедура заполняет таблицу информацией о продуктах
Dim i As Integer
Dim a As Variant ' переменная для хранения списка названий
a = Array («Торт Пражский», «Крупа гречневая», «Кофе ЧИБО», «Вафли шоколадные», «Бананы», «Яблоки», «Конфеты Коркунов», «Сосиски молочные», «Всего»)
' настройки таблицы
Form1.MSFlexGrid1. ColWidth(0) = 4200
Form1.MSFlexGrid1. ColWidth(1) = 3000
Form1.MSFlexGrid1. Col = 0
Form1.MSFlexGrid1. Row = 0
Form1.MSFlexGrid1. Text = «Товар»
Form1.MSFlexGrid1. Col = 1
Form1.MSFlexGrid1. Text = «Стоимость, руб.»
' заполнение данными
For i = 0 To 8
Form1.MSFlexGrid1. Col = 0
Form1.MSFlexGrid1. Row = i + 1
Form1.MSFlexGrid1. Text = a(i)
Name_Tovar(i) = a(i)
Next i
' настройка диаграммы
Form1.MSChart1. Title = «Диаграмма стоимости товаров»