ART11 (4)







@t - magazyn w pełni skomputeryzowany




Visual Basic (7)

Lekcja 16

Jak za pomocą jednego formularza wywołać drugi ? Wiadomo -
większe programy składają się z wielu formularzy. No dobra - pokaże Wam
praktycznie...

Na formie ułóż przycisk o etykiecie Pokaż. Teraz stworzymy drugą formę - ona
właśnie ukaże się po naciśnięciu przycisku Pokaż. No dobra - tworzymy - ale jak ?
Bardzo podobnie jak Moduł. Z menu wybierz Project - Add Form (pierwsza pozycja) kliknij
dwukrotnie na form. Na drugiej formie ułóż przycisk o etykiecie Ukryj i drugi przycisk
o etykiecie Koniec. Jeszcze jedno - co by się stało jakbyś niechcący wyłączył
formę2 - kliknij na krzyżyku w okienku z naszą formą (NIE na krzyżyku który jest na
formie). I co - znikło... Przywracamy to tak samo jak moduł. W okienku project klikamy
dwukrotnie na Form2 i znów widzimy naszą formę. No dobra - zajmijmy się dalej
programem.
Jak spowodować aby po kliknięciu przycisku Pokaż (na Form1) wyświetlić  Form2.
Proste - dodajemy kod:

Form2.visible = true

Uruchom program i przetestuj. Pojawiają się dwie formy. Teraz jeszcze dodamy kod do
dwóch przycisków na formie 2.

Aby ukryć formę (właściwie to wyłączyć) należy dodać kod:

Unload Me

Aby zakończyć cały program - czyli do przycisku koniec:

Unload Form1
Unload Me

Wystartuj program i przetestuj - działa? Myślę, że tak. 

Teraz sprawdź jeszcze jedno. Uruchom program, wyświetl formę 2 i naciśnij ukryj.
Teraz zamknij program "krzyżykiem" w prawym górnym rogu programu. Na niebiesko
zaznaczyła się nam ikonka "Play" na pasku narzędzi w VB. Oznacza to, że
program jest gotowy do następnego uruchomienia. I co z tego? Czytaj dalej...

Skoro już jesteśmy przy tym temacie to od razu wyjaśnię czym różni się ukrywanie
formy od wyłączenia jej. Zastosujmy to do powyższego przykładu. W przycisku Ukryj
zamiast Unload Me wpisz:

Form2.visible = false

Teraz uruchom program. Postępuj jak przedtem czyli
Uruchom program, wyświetl formę 2 i naciśnij ukryj. Teraz zamknij program
"krzyżykiem" w prawym górnym rogu programu. Ale ikonka play nie zmieniła
koloru na niebieski, co świadczy, że program jest jeszcze uruchomiony - ale gdzie ?
Naciśnij stop.
Uruchomiona jest forma2 gdyż ją tylko ukryliśmy, a nie zamknęli.

To po co w takim razie stosować funkcję Form2.Visible = false ?

Zróbmy jeszcze jeden test. Na formie 2 ułóż jeszcze TextBox-a . Wystartuj program.
Naciśnij przycisk Pokaż - wpisz coś w TextBox (nie wystarczy to co jest tam domyślnie)
i kliknij ukryj (czyli form2.visible = false). Wróciliśmy do formy 1. Kliknij jeszcze
raz Pokaż i co jest w TextBox-ie. Właśnie to co wpisaliśmy. No dobra, a teraz zamień
form2.visible = false na Unload Me. Zrób to samo jeszcze raz i co? Text box już nie
wyświetli tego co wpisaliśmy.

Krótko:
Funkcja Form.visible = false ukrywa tylko formę, zachowując jej własności i dane na
niej
Funkcja Unload Form kasuje bezpowrotnie wszystkie dane z formy.

Lekcja 17

Dzisiaj przed Wami dość trudna lekcja - będziemy mówić o oknach
dialogowych. Zacznijmy od tego co to jest okno dialogowe. Okna dialogowe spotkałeś
pewnie setki razy. Pokaże ci je w Paincie. Uruchom Paint-a (Start - Programy - Akcesoria
- Paint). Gdy się uruchomi to z menu wybierz plik i otwórz - pojawiło się okno
dialogowe. Daj anuluj. Teraz z plik wybierz zapisz - pojawiło się drugie okno dialogowe
bardzo podobne do otwórz. Dobra daj anuluj. Na dole jest paleta z farbami - kliknij
dwukrotnie na jakimkolwiek kolorze. Wyskoczyło kolejne okno dialogowe - kolor. Są
jeszcze okna dialogowe - czcionka i drukuj. W przykładzie posłużę się dwoma - kolor i
czcionka.

Pamiętasz jeszcze lekcję 13 - kazałem tam zapisać sobie mały programik który
potrafił wyrównywać tekst do prawej, lewej i wyśrodkowywać. Teraz uzupełnimy go o
możliwość manipulowania czcionką tzn. wielkość, styl i rodzaj czcionki. Uzupełnimy
go także o możliwość zmiany koloru czcionki. Do dzieła...

Uruchom VB. Z menu file wybierz open i odnajdź program (rozszerzenie VBP). No dobra
uruchomił się - teraz dorabiamy dwa przyciski. Jako wartość kaption przypisz im
kolejno - Czcionka, Kolor. No dobra - teraz musimy dopisać jakiś kod - ale jaki ?
No niestety - sam kod nie wystarczy - na formie musimy ułożyć element króry nazywa
się Common Dialog Box. Jak się domyślasz będzie on na palecie narzędzi po lewej. No
przynajmniej musi się tam znaleźć. Domyślnie jest wyłączony (chociaż nie wiem
dlaczego). No to jak go dodać do palety ? Kliknij prawym klawiszem myszki (to ten drugi)
na wolnym miejscu na pasku narzędzi, z powstałego menu kontekstowego wybierz Components.
Wyskoczyło okienko dialogowe na którym widzimy listę dostępnych komponentów - my
musimy znaleźć "Microsoft Common Dialog Control 6.0". Naciskamy Zastosuk i
zamknij. Czy widzisz już nowy element na pasku narzędzi ? Tak, ten na samym dole - to
ten prostokąt z dwoma kwadracikami i kropkami w środku). Wybierz go i ustaw gdzieś na
formie. Obojętne gdzie - on i tak jest niewidoczny. Potrzebny jest on VB tylko po to aby
zapamiętywał własności wybrane z okien dialogowych. Zmień tylko jego nazwę na cdb1.
Wystartuj program i co? Widzisz go gdzieś ? No nie. Dobra wyłącz program - bierzemy
się za kod. Kliknij dwukrotnie na przycisku Czcionka. Teraz dopiszemy kod:

cdb1.DialogTitle = "Zmień czcionkę"
cdb1.FontName = "MS Sans Serif"
cdb1.Flags = cdlCFBoth
cdb1.ShowFont

Uruchom program. Kliknij przycisk czcionka - pokazało się nam okno dialogowe. Wybierz
cokolwiek i kliknij OK. Jak widzisz nasz program jeszcze nie działa. Na razie wyjaśnię
poszczególne linijki kodu:

Najpierw tytuł okna dialogowego
Potem mamy domyślną czcionkę
Teraz bardzo ważna rzecz ! Informuje to CDB-a jakie czcionki ma wyświetlić - cdlCFBoth
oznacza, że wszystkie
No i teraz pokaż okno dialogowe.

Teraz musimy spowodować aby to działało - poniżej jeszcze dopisujemy następujący
kod:

lblgotowe.Font = cdb1.FontName
lblgotowe.FontBold = cdb1.FontBold
lblgotowe.FontItalic = cdb1.FontItalic
lblgotowe.FontSize = cdb1.FontSize

Jak to działa ? W chwili gdy ty wybierasz coś w Oknie dialogowym odpowiednie
własności zostają zapisane do cdb1. Teraz musisz je tylko stamtąd wyciągnąć. Teraz
kolejno wyciągaliśmy:
Nazwę czcionki, czy jest pogrubiona, czy może z kursywą, oraz jej rozmiar.

Uruchamiamy program i... działa !!!
No dobra, a co z drugim przyciskiem? Jeszcze został kolor czcionki... Do drugiego
przycisku dodajemy więc następujący kod:

cdb1.dialogTitle = "Zmieniamy kolor"
cdb1.ShowColor

Uruchamiamy program - naciskamy przycisk kolor - wyskakuje okienko takie jak w Paint.
Teraz wybieramy jakiś kolor i OK. Niestety, jeszcze nie działa. Teraz musimy jakoś z
cdb1 wyciągnąć kolor - ale jak? Poniżej dopiszmy jeszcze:

lblGotowe.ForeColor = cdb1.color

Teraz uruchamiamy program iii... działa !!

*******************KOMPILACJA*********************

Dobra - teraz was nauczę kompilować programy. Po co? Gdy piszesz projekt to
zapisujesz go do pliku VBS. A czy nie lepiej byłoby zrobić plik EXE ? Jasne, że tak !
Kompilacja jest nadzwyczaj banalna. Wystarczy z menu VB wybrać Make Project1.exe .
Oczywiście zamiast Project1.exe może pisać co innego. No to wybieramy Make... exe.
Teraz VB pyta się Nas gdzie zapisać skompilowany program. Teraz tylko OK i gotowe !!!

***************************************************
No dobra - teraz ciąg dalszy CDB.

1. Aby wywołać okno otwórz należy posłużyć się następującym kodem:

cdb1.dialogTitle = "Tytuł"
cdb1.Filter = "Zwykły plik tekstowe|*.txt|Zdjęcia|*.bmp; *.jpg "
cdb1.showOpen

Pewnie zastanawiasz się jak zrobić taki znaczek:  |  . Znajduje się on nad
Enter-em obok Backspace-a. Wpisujemy go z Shift-em. Wszystko pewnie jest jasne tylko nie
wiesz co to są te filtry. Pewnie się spotkałeś z takimi programami które pozwalają
otworzyć tylko niektóre pliki. W powyższym przykładzie program będzie tylko widział
pliki txt, a po zmianie opcji także bmp i jpg. Jeśli chcesz aby program widział
wszystkie pliki
to               
cdb1.Filter = "*.*"

No ale co to zwraca ? Zwraca to ścieżkę do pliku - możesz ją wyciągnąć w ten
sposób:

Dim x
x = cdb1.fileName

2. Zapisz:

cdb1.DialogTitle = "Tytuł"
cdb1.Filter = "*.*"
cdb1.FileName = "Test.txt"    'Domyślna nazwa pliku
cdb1.ShowSave

Ta funkcja także zwraca właściwość FileName

3. Drukuj

cdb1.DialogTitle = "Tytuł"
cdb.ShowPrinter

Ta funkcja zwraca pewne ustawienia drukarki - ale o tym później
Myślę, że tyle na dzisiaj wystarczy - do następnego spotkania...

Slash
slash83@wp.pl 

Tekst ten pochodzi z zinu @t




Wyszukiwarka

Podobne podstrony:
art11
art11 budowa domu na skarpie
art11
ART11 (3)
art11
art11
art11
ART11
ART11 (7)

więcej podobnych podstron