INSTR 03 DOC


Akademia Techniczno-Rolnicza w Bydgoszczy

Wydział Mechaniczny

Katedra Sterowania i Konstrukcji

Systemy mikrokomputerowe

WSTĘP DO PROGRAMOWANIA

W JĘZYKU VISUAL BASIC

Instrukcja nr 3

Opis działania programu Opcje

Program Opcje pokazuje, jak może wyglądać program dający użytkownikowi możliwość wyboru.

Wizualna implementacja programu Opcje

  1. Otwórz nowy projekt (z menu File wybierz New Project).

  1. Zachowaj formę projektu pod nazwą Opcje.frm. Zachowaj plik projektu pod nazwą Opcje.mak.

  1. Na podstawie tabeli zbuduj formę frmOpcje.

Obiekt

Cechy

Ustawienie

Form

Name

BackColor

Caption

Height

Left

Top

Width

frmOpcje

&H0000FF00&

Opcje

4425

1035

1140

7485

Option Button 0x01 graphic

Name

BackColor

Caption

Height

Left

Top

Width

optPoziom1

&H0000FFFF&

Poziom &1

495

4080

360

1215

Option Button 0x01 graphic

Name

BackColor

Caption

Height

Left

Top

Width

optPoziom2

&H00FF00FF&

Poziom &2

495

4080

840

1215

Option Button 0x01 graphic

Name

BackColor

Caption

Height

Left

Top

Width

optPoziom3

&H00C0C0C0&

Poziom &3

495

4080

1320

1215

Check Box 0x01 graphic

Name

BackColor

Caption

Height

Left

Top

Width

chkKolor

&H000000FF&

&Kolory

495

360

1320

1215

Obiekt

Cechy

Ustawienie

Check Box 0x01 graphic

Name

BackColor

Caption

Height

Left

Top

Width

chkMysz

&H000000FF&

&Mysz

495

360

840

1215

Check Box 0x01 graphic

Name

BackColor

Caption

Height

Left

Top

Width

chkDzwiek

&H000000FF&

&Dźwięk

495

360

360

1215

Command Button 0x01 graphic

Name

Caption

Height

Left

Top

Width

cmdKoniec

Ko&niec

495

5880

3360

1215

0x08 graphic
Label 0x01 graphic

Name

Alignment

Height

Left

Top

Width

lblWybor

2-Center

1095

600

2400

3495

Rys.1 Program Opcje

Wprowadzanie kodu programu Opcje

  1. Wewnątrz obszaru deklaracji formy frmOpcje wpisz następujący kod:

`Wszystkie zmienne muszą być zadeklarowane.

Option Explicit

  1. Do procedury cmdKoniec_Click() formy frmOpcje wpisz kod:

Sub cmdKoniec_Click()

End

End Sub

Uruchomienie programu Opcje

  1. Uruchom program Opcje.

  1. Kliknij przycisk opcji Poziom 1 (wewnątrz przycisku pojawi się kropka).

  1. Kliknij przycisk opcji Poziom 2 (program anuluje wybór przycisku Poziom 1 i wybierze przycisk Poziom 2).

  1. Kliknij przycisk opcji Poziom 3. W odpowiedzi program anuluje wybór opcji Poziom 1 i wybierze opcję Poziom 3.

  1. Kliknij kratkę Dźwięk. W odpowiedzi program umieści wewnątrz kratki znak x.

  1. Kliknij na inne kratki.

  1. Zakończ działanie programu, klikając przycisk Koniec.

  1. Do procedury chkKolor_Click() formy frmOpcje wprowadź następujący kod:

Sub chkKolor_Click()

UpdateLabel

End Sub

  1. Do procedury chkMysz_Click() formy frmOpcje wprowadź następujący kod:

Sub chkMysz_Click()

UpdateLabel

End Sub

  1. Do procedury chkDzwiek_Click() formy frmOpcje wprowadź następujący kod:

Sub chkDzwiek_Click()

UpdateLabel

End Sub

  1. Do procedury optPoziom1_Click() formy frmOpcje wprowadź następujący kod:

Sub optPoziom1_Click()

UpdateLabel

End Sub

  1. Do procedury optPoziom2_Click() formy frmOpcje wprowadź następujący kod:

Sub optPoziom2_Click()

UdateLabel

End Sub

  1. Do procedury optPoziom3_Click() formy frmOpcje wprowadź następujący kod:

Sub optPoziom3_Click()

UpdateLabel

End Sub

Informacje

Procedura chkKolor_Click() jest wywoływana zawsze, gdy kliknie się na kratkę chkKolor:

Sub chkKolor_Click()

UpdateLabel

End Sub

Kod wewnątrz procedury chkKolor_Click()wywołuje procedurę UpdateLabel().

Procedura chkDzwiek_Click() jest wywoływana zawsze, gdy kliknie się na kratkę chkDzwiek:

Sub chkDzwiek_Click()

UpdateLabel

End Sub

Kod wewnątrz procedury chkDzwiek_Click()wywołuje procedurę UpdateLabel(). Podobnie jak w obu poprzednich przypadkach procedura chkMysz wywołuje procedurę UpdateLabel.

Procedura optPoziom1_Click() jest wywoływana, gdy zostanie wybrany przycisk opcji optPoziom1:

Sub optPoziom1_Click()

UpdateLabel

End Sub

Opcja ta również wywołuje procedurę UpdateLabel. Identyczne działanie ma kod umieszczony wewnątrz procedur optPoziom2_Click() i optPoziom3_Click().

Dodawanie nowej procedury

  1. Z menu Window wybierz Project. W odpowiedzi Visual Basic wyświetli okno projektu.

  1. Sprawdź, czy w oknie Project form frmOpcje jest podświetlona i kliknij przycisk View Code znajdujący się w górnej części okna projektu. W odpowiedzi Visual Basic wyświetli okno kodu.

  1. 0x08 graphic
    Wybierz z menu View opcje New Procedure. W odpowiedzi Visual Basic wyświetli okno dialogowe New Procedure (rysunek 2).

0x08 graphic

Rys.2 Okno dialogowe New Procedure

  1. Sprawdź, czy jest wybrany przycisk opcji Sub pola dialogu. Wpisz w polu Name nazwę UpdateLabel (rysunek 2).

  1. Kliknij przycisk OK pola dialogu New Procedure. W odpowiedzi Visual Basic utworzy nową procedurę o nazwie UpdateLabel i wyświetli kod procedury w oknie Code (rysunek 4).

0x01 graphic

Rys.4 Dodawanie nowej procedury

  1. Wprowadź do nowej procedury następujący kod:

Sub UpdateLabel()

Dim Info

`Dźwięk

If chkDzwiek.Value = 1 Then

Info = „Dźwięk: Włączony”

Else

Info = „Dźwięk: Wyłączony”

End If

`Mysz

If chkMysz.Value = 1 Then

Info = Info + Chr(13) + „Mysz: Włączona”

Else

Info = Info + Chr(13) + „Mysz: Wyłączona”

End If

`Kolor

If chkKolor.Value = 1 Then

Info = Info + Chr(13) + „Kolor: Włączony”

Else

Info = Info + Chr(13) + „Kolor: Wyłączony”

End If

`Poziomy

If optPoziom1.Value = True Then

Info = Info + Chr(13) + „Poziom: 1”

End If

If optPoziom2.Value = True Then

Info = Info + Chr(13) + „Poziom: 2”

End If

If optPoziom3.Value = True Then

Info = Info + Chr(13) + „Poziom: 3”

End If

lblWybor.Caption = Info

End Sub

Zachowaj projekt (z menu File wybierz Save Project). Kliknięcie kratki lub przycisku opcji wywołuje i wykonuje procedurę UpdateLabel(). Procedura ta nie jest związana z konkretnym zdarzeniem (jest wywoływana przez wiele różnych zdarzeń). Procedury tego typu tworzone są przy pomocy opcji New Procedure z menu View.

Pierwszą instrukcją procedury jest deklaracja zmiennej Info:

Dim Info

Słowo Dim oznacza dla Visual Basica, że następne słowo Info jest nazwą zmiennej. W przypadku procedury UpdateLabel jest to zmienna tekstowa, czyli jej pełna deklaracja powinna wyglądać następująco:

Dim Info As String

Visual Basic nie wymusza jednak definiowania typu zmiennej podczas deklaracji. W przypadku naszego programu ma to jednak niewielkie znaczenie.

O ile to możliwe należy korzystać z deklaracji zmienne, sens tego działania ilustruje poniższy przykład:

Czas = 10

Prędkość = 50

Odległość = Czas * Prędkość

lblOdleglosc.Caption = „Odległość = ” + Odległość

Powyższe cztery instrukcje przypisują zmiennej Czas wartość 10, zmiennej Prędkość wartość 50, obliczają Odległość mnożąc Czas razy Prędkość oraz wyświetlają Odległość przypisując jej wartość do cech Caption etykiety lblOdleglosc. Jeżeli przez pomyłkę zapisałeś Odległość pomijając literę e tj.:

lblOdleglosc.Caption = Odlgłość

Visual Basic potraktuje Odlgłość jako nową zmienną i automatycznie przypisze jej wartość 0. Wyświetlana etykieta będzie miała następującą postać:

Odległość = 0

co jest błędem.

Można uniknąć takich pomyłek wymuszając na Visual Basicu sygnalizowanie nie zadeklarowanych zmiennych. W powyższym przykładzie, należy więc zmienić kod do następującej postaci:

Dim Czas

Dim Odległość

Dim Prędkość

Czas = 10

Prędkość = 50

Odległość = Czas * Prędkość

lblOdleglosc.Caption = „Odległość = ” + Odległość

Program po napotkaniu źle zapisanej zmiennej: Odlgłość wyda sygnał dźwiękowy i wyświetli odpowiednią informację. Podświetli też zmienną Odlgłość wskazując, że jest ona błędnie zapisana.

Aby wymusić deklarowanie zmiennych w języku Visual Basic należy w części ogólnych deklaracji umieścić instrukcję:

Option Explicit

Instrukcje występujące w procedurze UpdateLabel() po deklaracji Dim są otoczone instrukcjami If...Else...End If:

`Dźwięk

If chkDzwiek.Value = 1 Then

Info = ”Dźwięk: Włączony”

Else

Info = ”Dźwięk: Wyłączony”

End If

Do kodu w Visual Basicu można wprowadzać komentarze, korzystając ze znaku apostrofu (`) lub słowa Rem. Następująca linia:

`Dźwięk

jest więc równoważna linii:

Rem Dźwięk

Komentarze można również wstawiać do linii zawierającej instrukcje:

A = 1 `Inicjalizacja zmiennej

Procedura UpdateLabel() sprawdza, czy cecha Value kratki chkDzwiek ma wartość 1. Jeżeli cecha Value jest równa 1, to wykonywana jest instrukcja znajdująca się pomiędzy If oraz Else:

Info = ”Dźwięk: Włączony”

Przypisuje ona zmiennej Info tekst ”Dźwięk: Włączony”.

Cecha Value kratki jest równa 1, jeżeli wewnątrz niej znajduje się znak x. Zawsze gdy w kratce jest znak x, zmienna Info przyjmuje wartość ”Dźwięk włączony”. Instrukcje znajdujące się pomiędzy Else oraz End If są wykonywane, gdy cecha Value nie jest równy 1. Cecha Value kratki może mieć wartość 1 lub 0. Zawsze, gdy wewnątrz kratki nie ma znaku x, cecha Value ma wartość 0. W takim przypadku wykonywana jest instrukcja znajdująca się pomiędzy Else i End If, która ustawia wartość zmiennej Info na tekst ”Dźwięk: Wyłączony”.

Kolejny blok If...Else...End If sprawdza cechę Value kratki chkMysz.

`Mysz

If chkMysz.Value = 1 Then

Info = Info + Chr(13) + „Mysz: Włączona”

Else

Info = Info + Chr(13) + „Mysz: Wyłączona”

End If

Chr(13) oznacza znak końca linii (Enter). Na przykład jeśli kratka chkDzwiek zawiera znak x, a kratka chkMysz nie, to dwa pierwsze bloki If...Else...End If procedury UpdateLabel przypisują zmiennej Info następujący tekst:

Dźwięk: Włączony Chr(13) Mysz: Wyłączona

Zostanie wtedy wyświetlona informacja

Dźwięk: Włączony

Mysz: Wyłączona

Następny blok If...Else...End If procedury sprawdza cechę Value kratki chkKolor i odpowiednio uaktualnia zmienną Info.

`Kolor

If chkKolor.Value = 1 Then

Info = Info + Chr(13) + „Kolor: Włączony”

Else

Info = Info + Chr(13) + „Kolor: Wyłączony”

End If

Kolejny blok If...End If procedury sprawdza cechę Value przycisku opcji optPoziom1:

`Poziomy

If optPoziom1.Value = True Then

Info = Info + Chr(13) + „Poziom: 1”

End If

Cecha Value określa stan elementu kontroli. W przypadku przycisku opcji wartość True cechy Value oznacza, że przycisk jest wybrany, co powoduje uaktualnienie zmiennej Info.

Kolejne dwa bloki If...End If uaktualniają zmienną Info w zależności od cechy Value przycisków opcji optPoziom2 i optPoziom3.

If optPoziom2.Value = True Then

Info = Info + Chr(13) + „Poziom: 2”

End If

If optPoziom3.Value = True Then

Info = Info + Chr(13) + „Poziom: 3”

End If

Ostatnia instrukcja procedury UpdateLabel() uaktualnia parametr Caption etykiety lblWybor zawartością zmiennej Info:

lblWybor.Caption = Info

Zawartość zmiennej Info jest wyświetlana w etykiecie lblWybor tak jak przedstawia to rysunek 1.

Uwaga: Cecha Value kratki może mieć wartość 0, 1 lub 2.

Cecha Value kratki wybranej jest równa 1

Cecha Value kratki nie wybranej jest równa 0

Cecha Value kratki ma wartość 2, gdy jest ona niedostępna (szara). Aby kratka była niedostępna, należy ustawić jej cechę Enabled na False.

Uwaga: Cecha Value przycisku opcji może być równy True lub False

Cecha Value wybranego przycisku opcji ma wartość True.

Cecha Value nie wybranego przycisku opcji ma wartość False.

W Visual Basicu True jest zdefiniowane jako -1, False jest zdefiniowane jako 0.

Uwaga: Sposób działania bloku If...Else...End If.

W poniższym bloku If...End If instrukcje pomiędzy słowami If...End If wykonywane są tylko wtedy, gdy A równa się 1:

If A = 1 Then

..................................

... Kod wykonywany tylko wtedy ...

... gdy A równa się 1 ............

..................................

End If

Następująca konstrukcja prezentuje blok If...Else...End If:

If A = 1 Then

..................................

... Kod wykonywany tylko wtedy ...

... gdy A równa się 1 ............

..................................

Else

..................................

... Kod wykonywany tylko wtedy ...

... gdy A nie równa się 1 ........

..................................

End If

Uruchomienie programu Opcje

  1. Uruchom program Opcje.

  1. Klikaj różne kratki i przyciski opcji. W odpowiedzi program wyświetla informacje o kratkach i przyciskach w etykiecie lblWybor

  1. Zakończ działanie programu klikając przycisk Koniec.

Tworzenie pliku wykonywalnego (Opcje.exe)

  1. Wybierz z menu File opcję Make EXE File.

  1. Zapamiętaj plik pod nazwą Opcje.exe.

  1. Zakończ działanie Visual Basic wybierając z menu File opcję Exit

  1. Uruchom stworzony program .

Ćwiczenie końcowe

Popraw program Opcje tak, aby wykonywał następujące operacje:

  1. Zawsze gdy zaznaczysz kratkę chkDzwiek, komputer wydaje dźwięk.

  1. Zawsze gdy usuniesz zaznaczenie kratki chkKolor, tło formy zmieni się na purpurowe, a gdy zaznaczysz kratkę chkKolor, tło zmieni się na żółte.

Informacje

Aby komputer wydał dźwięk użyj instrukcji Beep

Aby zmienić tło formy na purpurowe, wykonaj instrukcje:

frmOpcje.BackColor=QBColor(13)

Aby zmienić tło formy na żółte, wykonaj instrukcje:

frmOpcje.BackColor=QBColor(14)

11

11

updatelabel



Wyszukiwarka

Podobne podstrony:
I 03 (3) doc
103 03 DOC
207 03 DOC
HOSPITACJA LEKCJI 5 a 03 doc
TEST CASE hurtownia 03 doc
HOSPITACJA LEKCJI 1 b gr 1 03 doc
WYKŁAD 03 DOC
II 03 (2) doc
INSTR 07 DOC
INSTR 08 DOC
INSTR 05 DOC
раздел 14(03) doc
03 (8) DOC
HOSPITACJA LEKCJI4 ab 03 doc
HOSPITACJA LEKCJI 5 bc 03 doc
INSTR 06 DOC
INSTR 01 DOC
r06 03 doc
INSTR 09 DOC

więcej podobnych podstron