Przykładowa aplikacjapoprzednia...Dopiszemy procedurę zdarzenia mnuZegarKolor_Click, która zmieni kolor tła formy. Wykorzystamy do tego kontrolkę CommonDialog i jej metodę ShowColor. Podobnie jak przy zmianie czcionki, najpierw przekażemy bieżący kolor do kontrolki CommonDialog, potem wywołamy metodę ShowColor a zwrócony kolor ustawimy jako kolor tła.
Dopiszemy kod, który będzie ukrywał i pokazywał datę. Będzie on uruchamiany, gdy użytkownik wybierze polecenie Pokaż menu Data lub polecenie Data menu Menu (jest to menu pop-up, które będzie wyświetlane, gdy użytkownik kliknie prawym klawiszem myszy na formie). Ponieważ polecenia te mają takie samo znaczenie i występuje przy nich znacznik V, należy zadbać, aby wywołanie jednego z nich miało wpływ na znaczniki obydwu (jeżeli Data\Pokaz jest zaznaczone, to Menu\Data też musi być). Kod procedury musi więc równocześnie zmieniać wartość właściwości Checked obydwu poleceń na przeciwną (przy użyciu operatora Not). Musi również zmieniać właściwość Visible kontrolki lblData, aby ją ukrywać lub pokazywać. Ponieważ na początku kontrolka lblData jest widoczna, a polecenie Data\Pokaz jest zaznaczone, więc wystarczy zmieniać właściwość Visible kontrolki lblData na przeciwną równocześnie ze zmianą właściwości Checked poleceń Data\Pokaż i Menu\Data. Po tym należy wyłować procedurę, która ustawi nowe pozycje kontrolek na formie.
Procedura mnuMenuData_Click, która ma wykonać dokładnie tę samą funkcję może teraz jedynie wywołać procedurę mnuDataPokaz_Click:
Identycznie postępujemy w stosunku do poleceń ukrywających i pokazujących czas:
Dodajemy kod proceury, która będzi ukrywać i pokazywać menu. Będzie ona zmieniać właściwość Visible poleceń menu na przeciwną przy użyciu operatora Not. Dodatkowo, gdy menu będzie widoczne, to polecenie "Ukryj menu" będzie się zmieniać na "Pokaż menu".
Pozostało jeszcze dodanie menu pop-up, gdy użytkownik kliknie prawym przyciskiem myszy. Nie można wykorzystać zdarzenia Click, ponieważ nie zwraca ono wartości określającej, który przycisk został naciśnięty. Zamiast niego należy wykorzystać zdarzenie MouseDown lub MouseUp. Procedura tego zdarzenia wykorzysta metodę PopupMenu formy frmZegar, aby wyświetlić menu o podanej nazwie. Dla formy rozwijane będzie menu pop-up Menu.
Podobnie będą wyglądały procedury dla kontrolek lblData i lblCzas:
To już cały kod jaki należało dodać do aplikacji. Kolejny etap to uruchomienie (znalezienie ewentualnych błędów i edycja). Następnie wybieramy polecenie Project1 Properties z menu Project. W oknie dialogowym w polu Project Name wpisujemy Zegar, w polu Project Description opis programu. Dodatkowe paramety możemy ustalić na zakładce Make. Zatwierdzamy przyciskiem OK. Możemy jeszcze zmienić właściwość Icon formy i wybieramy polecenie Make Zegar.exe menu File. Wybieramy ścieżkę i nazwę pliku i zatwierdzamy OK. Visual Basic skompiluje projekt do pliku wykonywalnego, który będzie działał bez środowiska Microsft Visual Basic. Można również jeszcze rozbudować aplikację. Można np. wymusić, aby zegar był zawsze wyświetlany na wierzchu (nad wszystkimi innymi działającymi aplikacjami), można dorobić kod, który będzie automatycznie uruchamiał zegar przy włączaniu Windows, lub można wykorzystać rejestr systemu, aby przechowywać ustawienia użytkownika i zawsze uruchamiać zegar z takimi atrybutami, jakie ustawił sobie użytkownik. Przykłady działania aplikacji: ![]() ![]() ![]() dalej... |