Ćwiczenie4, Sprawozdania, Instrukcje labolatoryjne


Wstęp

Po pierwszych ćwiczeniach, które pozwoliły użytkownikowi na zapoznanie się
z techniką projektowania formularzy, możliwościami manipulacji komponentami należy spróbować stworzyć pierwsza aplikację, która w sposób pełniejszy pokaże możliwości programowania w Delphi, a zwłaszcza umożliwi zaobserwowanie prostego sposobu na stworzenie graficznego interfejsu z systemem Windows. Przy tworzeniu własnego projektu należy pamiętać, że ze względu na liczbę plików jakie są tworzone dla jednego programu wszystkie pliki jednego zadania należy zapisywać w odrębnym, stworzonym dla tego zadania katalogu. Powinny się w nim znaleźć następujące pliki:

*.pas - plik źródłowy modułu. Zawiera jego kod żródłowy.

*.dfm - plik formularza. Jest to właściwie zakamuflowany binarny plik zasobów (.res). Zawiera opis formularza i umieszczonych na nim komponentów. Każdy formularz posiada swój własny plik .dfm

*.dpr - plik źródłowy projektu.

*.dsk - plik obszaru roboczego projektu. Zawiera on informacje na temat wyglądu obszaru roboczego podczas ostatniego zachowywania lub zamykania projektu. Zachowywane są w nim rozmiary i umiejscowienie wszystkich okien, dzięki czemu projekt po ponownym otwarciu wygląda dokładnie tak, jak w momencie zamykania. Plik ten jest tworzony tylko wtedy, gdy opcja zachowywania obszaru roboczego jest włączona.

Pozostałe pliki :

*.dof - plik opcji projektu,

*.exe - wynikowy program wykonywalny,

*.cfg - plik konfiguracyjny projektu,

*.dcu - binarne pliki wynikowe kompilatora (skompilowane moduły),

*.res - skompilowany binarny plik zasobów,

zostaną zawsze odtworzone w momencie kompilacji.

Tworzenie aplikacji

  1. Z menu głównego wybieramy File|New Application. W tym momencie możemy zostać zapytani o zapisanie bądź nie aktualnie otwartego projektu. W zależności od potrzeby zapisujemy lub nie.

  2. W tym momencie otwierają się nam standardowe okna Delphi. Jedynym komponentem jakim na razie dysponujemy jest formularz. Na tym etapie projektowania możemy pozwolić sobie na zmianę właściwości Name dla formularza (niekoniecznie trzeba to robić).

  3. Zmieniamy właściwość Caption dla formularza na Pierwszy duży projekt.

  4. Z menu głównego wybieramy opcję Project|Options i na zakładce Application jako tytuł podajemy Mój program, Ok. dla potwierdzenia i zamknięcia okna dialogowego.

  5. Zaczynamy teraz dodawać prosty pasek narzędzi. Na początek wybieramy z kart Win32 Palety Komponentów komponent ToolBar. W celu dodania go możemy kliknąć w dowolnym miejscu formularza pasek narzędzi automatycznie dopasuje się do jego górnej krawędzi.

  6. Jeżeli chcemy na pasku narzędzi dodać przyciski możemy to zrobić klikając na nim prawym klawiszem myszy, pojawi się menu, z którego wybieramy opcję New Button. Na pasku pojawi się przycisk. Operacje tą powtarzamy raz jeszcze i dodajemy kolejny przycisk na pasku narzędzi.

  7. W kolejnym kroku dodamy do naszego formularza linię statusu. Z karty Win32 Palety Komponentów wybieramy komponent StatusBar. Klikamy w dowolnym miejscu formularza, linia statusu zostanie dopasowana do dolnej jego krawędzi.

  8. Z karty Standard Palety Komponentów wybieramy komponent Memo i umieszczamy go na formularzu.

  9. Klikamy dwukrotnie pole wartości właściwości Lines. Pojawi się okienko String List Editor. Z jego pomocą kasujemy słowo Memo, a następnie potwierdzamy operację przez OK.

  10. Zmieniamy wartość właściwości Scrollbar komponentu Memo na ssVertical, właściwość Name dla właściwości Font tego komponentu na Fixedsys, a właściwość Align na alClient. Komponent Memo zmieni swoje rozmiary tak, że zajmie cały obszar pomiedzy paskiem narzędzi a linią statusu.

  11. W tym momencie można już uruchomić program, aby sprawdzić jak to wszystko wygląda. Możemy to zrobić za pomocą przycisku Run lub F9. Przed uruchomieniem jednak zalecane jest zapisanie całego projektu. Po zapisaniu i obejrzeniu naszego wstepu przejdziemy do nastepnego kroku jakim będzie tworzenie menu.

  12. Otwieramy nasz projekt ponownie nasz projekt. Na formularzu dodajemy komponent MainMenu. Należy w tym momencie zwrócić uwagę na fakt, że komponent MainMenu ma bardzo mało właściwości do ustawienia i nie ma żadnych zdarzeń z nim związanych. Wszystkie funkcje związane z obsługą menu są wykonywane przez poszczególne elementy menu.

  13. Po pojawieniu się ikony MainMenu na formularzu kolejną czynnością jest uruchomienie Projektanta Menu przez dwukrotne kliknięcie na ikonie. Po uruchomieniu pojawi się nam na ekranie okno wyglądające jak czysty formularz z usuniętą dodatkowo siatką. Posiada on zawsze pusty element przeznaczony na nowe elementy menu.

  14. W Inspektorze Obiektów zmieniamy właściwość Caption na &Plik i potwierdzamy Enter. W tej chwili pojawi się nam na formularzu menu Plik, a dodatkowo w pionie miejsce na kolejny element opcji Plik, natomiast w poziomie pole na kolejny element menu głównego.

  15. Na początek przechodzimy w pionie i dodajemy opcje pozycji menu głównego Plik. Dla pierwszego pola zmieniamy wartość właściwości Caption na &Nowy.

  16. Podobne operacje przeprowadź dla kolejnych pól menu: Otwórz, Zapisz, Zapisz jako.

  17. Aby do menu wstawić linię podziału (separator) należy jako Caption kolejnego pola podać myślnik „-„ .

  18. Następnie stwórz kolejne pola menu głównego: Edycja, Pomoc i Wyjście (jedno pole zamknij).

  19. Innym sposobem na stworzenie menu głównego jest korzystanie z szablonów. Klikając na odpowiednim polu menu głównego prawym przyciskiem myszy uruchamiamy menu kontekstowe, które umożliwi nam wybranie różnych opcji, między innymi wstawienia z szablonów (Insert from Template), wstawienia ze źródła (Insert from Source), dodawanie ( Insert) i kasowanie (Delete) poszczególnych opcji menu.

  20. Podczas tworzenia menu przez cały czas jego strukturę można zmieniać. Zarówno dodawać nowe element i kasować niepotrzebne, jak i zmieniać ich kolejność.

  21. Jeżeli mamy w menu głównym jakąś opcję, której na razie nie będziemy wykorzystywać i chcemy ją zablokować (na ekranie pojawi się jako nieaktywne pole szare) to zmieniamy jej właściwość Enabled na False.

  22. Czasami potrzeba do naszego menu dodać bitmapy. Aby to zrobić należy najpierw wybrać element menu do którego bitmapa ma być dodawana, a następnie kliknąć dwukrotnie na wartości właściwości Bitmap. Uruchomiony zostanie Picture Editor, z którego można wybrać odpowiednią bitmapę. Wstawiona bitmapa nie będzie widoczna na formularzu i w Projektancie menu aż do momentu uruchomienia programu.

  23. Co zrobić gdy dla którejś opcji menu chcemy stworzyć podmenu. Jest ono zwykle oznaczone strzałką w prawo znajdującą się po prawej stronie tekstu opisującego dany element menu. Możemy je stworzyć wybierając z menu kontekstowego Projektanta Menu opcję Create Submenu lub przy wciśniętym klawiszu Ctrl wciskając strzałkę. Spowoduje to stworzenie obok wybranej opcji menu nowego czystego elementu menu. Kolejne elementy dodaje się w taki sam sposób jak elementy menu głównego.

  24. Poprzez odpowiednią zmianę właściwości ShortCut dla poszczególnych elementów menu możemy do naszego menu dodać skróty (kombinacje klawiszy, których użycie powoduje uruchomienie odpowiedniej opcji). Właściwość ShortCut ma listę wartości, które może przyjmować i jej ustawienie polega na wybraniu odpowiedniej wartości z listy. Obsługa skrótów działa samoczynnie, nie wymaga dodatkowego oprogramowania.

  25. Poprzez F9 można teraz uruchomić program ( po wcześniejszym zapisaniu oczywiście) i zobaczyć efekt projektu. Na razie mamy tylko wygląd naszego menu. Teraz pod każdą z opcji, która została zaplanowana należałoby podpiąć odpowiednią procedurę. Spróbujemy to zrobić dla opcji Wyjście|Zamknij naszego menu.

  26. Po wybraniu naszej opcji Wyjście a następnie Zamknij w Projektancie Menu i dwukrotnym kliknięciu wybranej opcji przechodzimy do edytora kodu. Kursor mamy ustawiony w odpowiedniej procedurze obsługi. Pomiędzy begin i end wstawiamy instrukcję Close;

  27. Po uruchomieniu programu za pomocą F9 możemy zobaczyć efekt naszej pracy.

  28. Kolejnym krokiem przy projektowaniu menu jest tworzenie menu kontekstowego. Można je przypisać odpowiednim komponentom na formularzu zmieniając ich właściwość PopupMenu. Gdy nad komponentem z którym to menu jest związane umieścimy kursor myszy i klikniemy prawym przyciskiem to menu kontekstowe zostanie uaktywnione.

  29. Stworzymy menu kontekstowe skojarzone z naszym komponentem Memo.

  30. W tym celu z Palety komponentów musimy pobrać komponent PopupMenu i umieścić go na formularzu. Aby skojarzyć menu kontekstowe z naszym komponentem Memo zmieniamy właściwość PopupMenu naszego komponentu Memo na nazwę wybieranego z rozwijanej listy komponentu PopupMenu (jeżeli dla komponentu PopupMenu nie zmienialiśmy właściwości Name będą na niej elementy PopupMenu odpowiednio numerowane według kolejności wstawiania na formularz).

  31. Po ustawieniu powiązania z odpowiednim komponentem formularza przez dwukrotne kliknięcie myszą na komponencie PopupMenu uruchamiamy Projektanta menu.

  32. Dodawanie poszczególnych pól do menu kontekstowego wykonywane jest tak samo jak w przypadku menu głównego.

  33. Do menu kontekstowego dodajemy trzy opcje: Wytnij, Kopiuj, Wstaw.

  34. Kolejnym krokiem jest dopisanie procedur obsługi poszczególnych opcji.

  35. Dopiszemy procedurę kasowania zawartości pola Memo.

  36. Po wybraniu naszej opcji Kasuj w Projektancie Menu i dwukrotnym jej kliknięciu przechodzimy do edytora kodu. Kursor mamy ustawiony w odpowiedniej procedurze obsługi. Pomiędzy begin i end wstawiamy instrukcję Memo1.Clear;

  37. W ten sposób stworzyliśmy menu główne naszego projektu i przykładowe menu kontekstowe.

Cel ćwiczenia

Podstawowym celem ćwiczenia jest zapoznanie się użytkownika Delphi z techniką tworzenia menu głównego aplikacji oraz menu pomocniczego oraz poznanie mechanizmów manipulowania poszczególnymi opcjami. Dodatkowo użytkownik powinien zaznajomić się również z możliwościami wzbogacenia wyglądu menu w celu uzyskania efektu standardowej aplikacji Windows.

Plan ćwiczenia

Warunki zaliczenia

Warunkiem zaliczenia ćwiczenia jest rozwiązanie zadania podanego przez prowadzącego. Po zakończeniu pracy każdy program powinien zostać zapisany
w odpowiednim katalogu. Pliki zapisane w innym niż podany przez prowadzącego katalogu nie będą sprawdzane.

5



Wyszukiwarka

Podobne podstrony:
Ćwiczenie2, Sprawozdania, Instrukcje labolatoryjne
ćwiczenie7, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie6, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie11, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie5, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie8, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie10, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie1, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie3, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie2, Sprawozdania, Instrukcje labolatoryjne
Cwiczenie75, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr75
Ćwiczenie nr 50b, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr50b
Doświadczalne spr p. Malusa, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr70
Mechanika gruntów - Ćwiczenie 1 - Sprawozdanie 1, Budownictwo S1, Semestr III, Mechanika gruntów, La
Ćwiczenie nr 82, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr82
Ćwiczenie nr 65c, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr65c
Mechanika gruntów - Ćwiczenie 5 - Sprawozdanie 4, Budownictwo S1, Semestr III, Mechanika gruntów, La
SPRAWOZDANIE Z ĆWICZENIA POMIARY PROMIENIOWANIA LABOLATORIUM MASZYN I URZĄDZEŃ ENERGETYCZNYCH
Ćwiczenie nr 65, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr65

więcej podobnych podstron