|
Приклад оформлення лабораторної роботиDate: 2015-10-07; view: 452. На мал. 4 показаний приклад оформлення форми лабораторної роботи. Розглянемо створення подібної форми.
Мал. 4. Після запуску Visual Basicу вікніNew Projectобираєтьсязначок Standard.exe,це створює форму з назвоюForm1.Властивості форми: Name – Lab, Caption – Лабораторна робота, BorderStyle – 1 (під час роботи розміри форми неможливо змінити), ScaleMode (одиниці виміру) – 1 – Twip (за умовчанням). Властивості проекту можна змінити, клацнувши правою кнопкою у вікні Project Explorerна назві проекту і обравши з контекстного меню команду Project Properties.На вкладках GeneralтаMakeможна змінити назву проекту на, скажімо, Lab_Rob. Меню вікна форми створюється за допомогою спеціального редактора, що викликається командою Tools, Menu Editor. Для створення двох перемикачів спочатку створюємо Frame, скориставшись відповідним елементом керування на панелі елементів. У властивостях Frame Properties задається: Caption – Тип об'єкта. Далі у Frame додаємо два перемикача Options Button,їх властивості: першого - Caption – 2D об'єкт, Name – D2, другого - Caption – 3D об'єкт, Name – D3. На мал.4 показана форма з двома командними кнопками, для їх створення використаний елемент Command Button,властивості кнопок: верхньої - Caption – Вихід, Name – EndPr, нижньої - Caption – Малювати, Name – Draw. Креслення фігур відбувається у вікні PictureBox, вміщеному у Frame.Задаємо такі властивості: Frame Properties – Caption – Креслення об'єкта, PictureBox Properties- Name – P, AutoRedraw (автоматичне перемалювання в разі тимчасового перекриття форми іншими вікнами і т. п.) – True. Для створення ефектів зміни кольору ліній чи зафарбування фігур додаємо на форму елемент Timer.Властивості таймера: Enabled – False (за умовчанням таймер вимкнений), Interval (інтервал спрацювання) – 100 мілісекунд. Після програмування таймер буде вмикатися під час малювання двовимірної фігури і вимикатися під час креслення тривимірного об'єкта. Написання коду.Зі створеними елементами (кнопками, перемикачами, таймером, підпунктами меню) пов'язуються процедури обробки події - клацання на кнопці, обрання перемикачів, підпунктів меню, спрацювання таймера. Процедури обробки подій зберігають код на мові Visual Basic,що створюється у вікні Code.Подвійне клацання на елементі форми відкриває вікно для створення коду, при цьому автоматично записуються перший і останній оператор процедури. Для створення коду кнопки Вихід (так само, як і для команди меню Малюнок, Вихід) залишається написати один оператор End: Private Sub EndPr_Click() End End Sub Обрання пункту меню Довідка, Про програму (ім'я пункту в редакторі меню задано як м9)викликає появу вікнаMsgBox: Private Sub м9_Click() MsgBox "Виконав студент групи ПЦБ-11 Іванов І. І. Варіант № 1", _ vbInformation, "Про програму" End Sub Клацання на кнопці Малюватив залежності від значення перемикача Options Button D2 (True – обраний, False – не обраний) викликає процедуру малювання двовимірної фігури D2Draw або тривимірної D3Draw: Private Sub Draw_Click() If D2.Value = True Then D2Draw Else D3Draw End If End Sub Обрання пункту меню Малюнок, Малювати (ім'я пункту в редакторі меню задано як м5)викликає процедуру, пов'язану з кнопкою Малювати: Private Sub м5_Click() Draw_Click End Sub Пункти меню Малюнок, 2D об'єктта 3D об'єкт (імена пунктів задані як м2 і м3)пов'язані з відповідними перемикачами: Private Sub м2_Click() D2.Value = True End Sub Private Sub м3_Click() D3.Value = True End Sub Таймер викликає процедуру малювання двовимірної фігури D2Draw: Private Sub Timer1_Timer() D2Draw End Sub У процедурі створення двовимірної фігури D2Draw вмикається таймер, очищується графічне вікно методом Cls і малюється круг, колір зафарбування якого є випадково обраним. Завдяки спрацюванню таймера колір змінюється кожні 100 мілісекунд. Координати центра круга визначаються як половина ширини та висоти графічного вікна, радіус дорівнює 0,75*X: Sub D2Draw() Dim X As Long, Y As Long, Rad As Long Dim R As Long, G As Long, B As Long Timer1.Enabled = True P.Cls X = P.ScaleWidth / 2 Y = P.ScaleHeight / 2 Rad = X * 0.75 P.FillStyle = 0 R = 255 * Rnd G = 255 * Rnd B = 255 * Rnd P.FillColor = RGB(R, G, B) P.Circle (X, Y), Rad, RGB(R, G, B) End Sub В процедурі малювання тривимірної фігури (див. мал. 5) D3Draw малюються 20 кругів випадково обраних кольорів. Таймер відключений. Центр кожного наступного круга переміщується на 100 твіпів по осям X та Y. Мал. 5. Sub D3Draw() Dim X As Long, Y As Long, Rad As Long Dim R As Long, G As Long, B As Long Dim I As Integer Timer1.Enabled = False P.Cls X = P.ScaleWidth / 3.5 Y = P.ScaleHeight / 3.5 Rad = X * 0.5 For I = 1 To 20 P.FillStyle = 0 R = 255 * Rnd G = 255 * Rnd B = 255 * Rnd P.FillColor = RGB(R, G, B) P.Circle (X, Y), Rad, RGB(R, G, B) X = X + 100 Y = Y + 100 Next End Sub
|