Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Розглянемо деякі елементи мови програмування Visual Basic




Visual Basic підтримує кілька чисельних типів даних. Для об’яви типу змінної використовуються оператори з таким, наприклад, синтаксисом:

Dim variablename As type

Тут variablename – ім’я змінної, type - тип змінної. Змінні, об’явлені оператором Dim, існують тільки у процедурі/модулі (локальні змінні). Для того, щоб змінна була доступна в усіх процедурах/модулях додатку, замість оператора Dim використовується Public.

Константам також можна надавати імена:

Public Const constantname As type = expression

Private Const constantname As type = expression

Тут constantname – ім’я константи, type – тип, expression – значення константи. Константи, об’явлені оператором Private, є локальними, а ті, що доступні в усіх процедурах/модулях додатку, вводяться з використанням оператора Public.

Для виведення повідомлень користувачу, пов’язаних з натиснутою кнопкою, використовується функція MsgBox. Синтаксис функції розглянемо на прикладі:

Dim answer As VbMsgBoxResult

answer = MsgBox("Завершить работу?", vbYesNo + vbQuestion, _

“Завершение работы”)

If answer=vbYes Then End

Тут перший аргумент функції "Завершить работу?" - вираз, що з’являється у вікні повідомлення, vbYesNo + vbQuestion – константи, що відображують, відповідно, кнопки з написами “Yes” та “No” і знак питання, “Завершение работы” – заголовок вікна повідомлення, End – завершує роботу програми, VbMsgBoxResult – тип змінної, що містить можливі варіанти відповіді на MsgBox.

Visual Basic надає можливість користувачу обирати параметри з певного набора за допомогою таких елементів керування (див. панель елементів): прапорці (Check Boxes) – набор опцій, з якого можна обрати кілька опцій, перемикачі (Options Buttons) – набор опцій, з якого можна обрати тільки одну опцію, вікно списку (List Box) – список з лінійкою прокрутки, комбіноване вікно списку (Combo Box) – список з лінійкою прокрутки та додаткове вікно для введення і редагування.

До складу елементів керування на панелі елементів включені об’єкти, що полегшують роботу з графікою:

Image (зображення) – використовується для відображення малюнків,

PictureBox (графічне вікно) – використовується для відображення малюнків чи як контейнер для інших елементів керування,

Shape (контур) та Line (лінія) – виконують креслення графічних елементів на поверхні форми виключно з декоративною метою, не підтримують ніяких подій.

У Visual Basic є можливість створити меню для нового додатку. Меню дуже легко створюється за допомогою редактора Menu Editor, що викликається командою Tools, Menu Editor або натисненням відповідної кнопки на стандартній панелі інструментів.

Visual Basic надає користувачу такі методи створення графічних об’єктів у формах та графічних вікнах:

Cls – стирає всю графіку та виведення методом Print,

Pset – задає колір обраної точки,

Point – повертає значення кольору обраної точки,

Line – малює лінію, прямокутник або зафарбований прямокутник,

Circle – малює круг, еліпс або дугу круга чи еліпса,

PaintPicture – малює графічне зображення у заданому місці.

Створення графіки за допомогою графічних методів потребує написання коду, тобто потрібно запустити додаток на виконання для перегляду результатів. Кожен графічний метод працює на формі, у графічному вікні та на об’єкті Printer. Для адресації виведення графіки слід вказати перед ім’ям графічного метода ім’я форми чи графічного вікна. Якщо ім’я об’єкту не вказане, малювання виконується на поточній формі. Наприклад, малювання крапки на формі MyForm: MyForm.Pset (500,500), на поточній формі: Pset(500,500). Цифри показують координати крапки – відстань від лівого верхнього кутка форми чи графічного вікна. Як одиниця виміру використовується твіп (twip): 1 твіп=1/20 пункта=1/1440 дюйма.

Додавання оператора кольору розширює можливості метода Pset. У наступному коді Rnd – функція, що повертає випадкове число, RGB(R, G, B) – задає колір, числа R, G, B визначають інтенсивність відповідно червоної, зеленої та синьої компонент.

R = 255 * Rnd

G = 255 * Rnd

B = 255 * Rnd

PSet (500, 500), RGB(R, G, B)

Малювання прямокутного трикутника методом Line:

Line (1500, 500)-(3000, 2000)

Line -(1500, 2000)

Line -(1500, 500)

Перший рядок коду задає проведення лінії між точками, координати яких наведені в дужках. Перша пара координат не обов’язкова, малювання відбувається від останньої накресленої крапки. Намалювати першу лінію можна також за допомогою оператора Step, що задає прирощення координат:

Line (1500, 500)-Step(1500, 1500)

Малювання темно-синьої лінії: Line (1500, 500)-Step(1500, 1500), RGB(0, 0, 255).

Креслення прямокутника з лівим верхнім кутом у точці з координатами (500, 500) та зі сторонами довжиною 1000 твіпів методом Line:

Line (500, 500)-Step(1000, 0)

Line -Step(0, 1000)

Line -Step(-1000, 0)

Line -Step(0, -1000)

Креслення прямокутника можна виконати з використанням параметра B метода Line, задати при цьому потрібно лише дві діагональні точки прямокутника:

Line (500, 500)-Step(1000, 1000), RGB(0, 0, 255), B

Властивість FillStyle задає спосіб зафарбування фігури, за умовчанням FillStyle=1 прозоре. Властивість FillColor задає колір заливки.

Метод Circle малює круговий чи еліптичний контур, наприклад, наступний оператор створює круг червоного кольору з центром у точці (5000, 5000) та радіусом 3000 твіпів.

Circle (5000, 5000), 3000, RGB(255, 0, 0)

Креслення еліпса червоного кольору з центром у точці (5000, 5000) та більшим радіусом 3000 твіпів, вертикальний радіус якого вдвічі більший за горизонтальний, методом Circle:

Circle (5000, 5000), 3000, RGB(255, 0, 0),,, 2

Методом Circle можна виконати креслення дуги круга чи еліпса, задавши параметри початкового та кінцевого значення центрального кута. Кут вимірюється у радіанах проти годинникової стрілки від осі X. Наступний код задає малювання еліпсу, показаного на мал. 3. Константи vbBlue та vbRed визначають відповідно синій та червоний колір, властивості DrawStyle та DrawWidth – стиль та товщину ліній. Малювання відбувається у напрямку проти годинникової стрілки, наприклад, синьої дуги від точки, що відповідає центральному куту у 3π/2 до точки з центральним кутом π/2, мінуси перед значенням кутів означають необхідність провести лінію радіусу до початкової та кінцевої точки дуги.

Const pi = 3.14

FillStyle = 5

FillColor = vbBlue

Circle (5000, 5000), 3000,, -3 * pi / 2, -pi, 1 / 2

FillStyle = 4

FillColor = vbRed

DrawStyle = 1

DrawWidth = 1

Circle (5000, 5000), 3000,, -pi, -3 * pi / 2, 1 / 2

Мал. 3.

Масив об’єктів Picture можна використовувати для збереження зображень у пам’яті. Це зручно для створення анімаційних зображень, чи інших додатків, де потрібна швидка зміна малюнків. У наступному коді запрограмоване по черзі відображення на формі малюнків 1.bmp та 2.bmp.

Змінна об’явлена на рівні модуля:

Dim i As Integer

Наступний код доданий у процедуру завантаження форми, в ньому координати лівого верхнього кута малюнка (0,0):

Private Sub Form_Load()

Dim obj(1) As Picture

Set obj(0) = LoadPicture("1.bmp")

Set obj(1) = LoadPicture("2.bmp")

PaintPicture obj(i), 0, 0

End Sub

На формі розміщений елемент керування Timer, властивості якого визначають інтервал між зміною зображень на формі. У події Timer організований цикл обрання зображень:

Private Sub Timer1_Timer()

If i = 0 Then

i = 1

Else

i = 0

End If

Form_Load

End Sub

Додавши у процедуру завантаження форми цикл зміни координат, можна примусити малюнки переміщуватися по формі.




Поделиться с друзьями:


Дата добавления: 2014-12-23; Просмотров: 488; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.019 сек.