1 PSZ wykład 2 > Przegląd komponentów biblioteki VCLProgramowanie w Środowiskach Zintegrowanych > Przegląd komponentów biblioteki VCL > Projektowanie interfejsu uzytkownika
2 Na poprzednim wykładzieSystemy i środowiska zintegrowane Założenie i motywacja Elementy środowiska zintegrowanego Integracja Środowisko Borland IDE Elementy środowiska Koncepcja komponentów Rozszerzenia składni języka c++
3 Konspekt bieżącego wykładuPrzegląd komponentów biblioteki VCL Projektowanie interfejsu użytkownika Okna główne i ramki (TForm, TFrame) Konstrukcja okna głównego (TPanel, TBevel, TSeparator, TGroupbox) Podstawowe komponenty interfejsu użytkownika Elementy wykorzystujące kolekcje (TListView, TTreeView)
4 Przegląd komponentów biblioteki VCLElementy interfejsu Elementy systemowe Elementy dostępu do danych Internet
5 Elementy interfejsu Podstawowe zadanie – zapewnienie możliwości obsługi podstawowych i rozszerzonych elementów składowych interfejsu użytkownika Obejmują wszystkie elementy obowiązujące w standardzie Win32 oraz elementy starego interfejsu Win3.1 Pakiety: Standard Additional Win32 Win3.1
6 Elementy interfejsu
7 Elementy systemowe Podstawowe zadanie – wykorzystanie niektórych mechanizmów systemu operacyjnego Windows (OLE, DDE, Multimedia) Pakiety: System Dialogs
8 Elementy systemowe
9 Dostęp do danych Podstawowe zadanie – integracja aplikacji z bazami danych Zapewnienie możliwości edycji danych Obsługuje większość popularnych standardów Dostęp w trybie ODBC i trybie bezpośrednim (natywnym) Biblioteka zawiera komponenty o wysokim poziomie abstrakcji oraz komponenty specjalizowane Pakiety: Data Access ADO BDE InterBase DBExpress Data controls
10 Dostęp do danych
11 Internet Podstawowe zadanie – integracja aplikacji z siecią komputerową, siecią Internet oraz jej usługami Pozwala na tworzenie aplikacji Active Server Pages działających w środowisku serwera usługi WWW Pakiety: Internet Fastnet
12 Internet
13 Projektowanie interfejsu użytkownikaOkna główne i ramki (TForm, TFrame) Konstrukcja okna głównego (TPanel, TBevel, TSeparator, TGroupbox) Podstawowe komponenty interfejsu uzytkownika
14 Okna główne Podstawowy komponent realizujący funkcje okna głównego – TForm (formularz, formatka) Komponent realizujący okno dialogowe – TDialog i jego szczególne przypadki reprezentujące typowe okna dialogowe Komponent realizujący fragment okna głównego lub jego prototyp – TFrame (ramka)
15 Formularz, okno dialogoweFormularz i Dialog różnią się zasadniczo funkcjonalnością, przeznaczeniem i sposobem obsługi Formularz – komponent znacznie bardziej rozbudowany
16 Ramka osadzona w formularzuRamka służy do projektowania typowych dla aplikacji, tzn. powtarzających się w różnych formularzach grup elementów interfejsu Ramkę umieszcza się na formularzu, stanowi ona jego element
17 Zasady konstrukcji formularzaPodstawowy priorytet – wygoda użycia Jak otrzymać formularz wygodny w użyciu podział formularza na bloki uniezależnienie wyglądu od aktualnego rozmiaru umożliwienie rekonfiguracji w czasie działania programu
18 Podział formularza Panel Separator Bevel
19 Przykładowy projekt Projektowanie podziału formularza [WDesign.bpr]
20 Okna sterujące Okna sterujące realizują interakcję z użytkownikiemInne określenie – kontrolki (controls) Podstawowe okna sterujące Pole edycyjne, etykieta Przycisk, przycisk radiowy, przycisk typu check Lista, lista Combo, lista drzewko Skoroszyt, zakładka Menu, pasek narzędzi
21 Przykładowe okna sterująceMenu Pasek narzędzi Skoroszyt Zakładka skoroszytu Przycisk paska narzędzi Drzewko Grupa Pole edycyjne Lista Etykieta Przycisk
22 Okno sterujące jako komponent VCLTworząc aplikację okna sterujące „pobiera się” z palety komponentów i umieszcza na formularzu (ramce lub oknie dialogowym) Następnie korzystając z edytora właściwości ustawia się podstawowe właściwości komponentu Ustawienia zapamiętywane są w skojarzonym z formularzem plikiem tekstowym o nazwie
23 Okno sterujące jako komponent VCLOkno sterujące typu Pole edycyjne umieszczone na formularzu Właściwość
24 Struktury kodowe dla okien sterujących
25 Kolekcje Kolekcja jest elementem okien sterujących przechowujących różnego rodzaju zbiory danych (długie teksty, listy, tabele, drzewa) Większość usług kolekcji zaimplementowano w klasie TCollection Klasa umożliwia dodawanie elementów, ich wstawianie, usuwanie, czyszczenie listy, itp. TCollectionItem* __fastcall Add(void); TCollectionItem* __fastcall Insert(int Index); void __fastcall Delete(int Index); void __fastcall Clear(void);
26 Komponent TListView i TTreeViewKomponent TListView pozwala na prezentację listy wartości w postaci tabeli, listy z ikonami, zbioru ikon. Komponent TTreeView pozwala na prezentacje dowolnej drzewiastej struktury danych.
27 TListView – wypełnianie w czasie run-timeTListItem *l; int rok, miesiac; //Czyszczenie kolekcji elementów lvLataMiesiace->Items->Clear(); for ( rok = 2000; rok <= 2005; rok ++ ) for ( miesiac = 1; miesiac <=12; miesiac ++ ) { //Dodanie nowego elementu l = lvLataMiesiace->Items->Add(); //Ustawnienie nagłówka i wartości pierwszej kolumny l->Caption = IntToStr(rok) + "/" + IntToStr(miesiac); }
28 TTreeView – wypełnianie w czasie run-timeTTreeNode *tn; int rok, miesiac; //Czyszczenie kolekcji elementów tvLataMiesiace->Items->Clear(); for ( rok = 2000; rok <= 2005; rok ++ ) { //Dodanie nowego elementu tn = tvLataMiesiace->Items->Add(NULL, IntToStr(rok)); for ( miesiac = 1; miesiac <=12; miesiac ++ ) tvLataMiesiace->Items->AddChild( tn, IntToStr(miesiac)); }
29 Przykładowy projekt Korzystanie z komponentów TListView i TTreeView[Lists.bpr]
30 Podsumowanie Przegląd komponentów biblioteki VCLElementy interfejsu Elementy systemowe Elementy dostępu do danych Internet Projektowanie interfejsu użytkownika Okna główne i ramki (TForm, TFrame) Konstrukcja okna głównego (TPanel, TBevel, TSeparator, TGroupbox) Podstawowe komponenty interfejsu użytkownika Elementy wykorzystujące kolekcje (TListView, TTreeView)