Roz10


Rozdział 10
Pierwsze formularze
Mając skompletowane główne okno aplikacji, możemy rozpocząć tworzenie
dalszej części programu. Zanim jednak zaczniemy konstruować kolejne
formularze, musimy popracować nad modułem danych - dmRENTMAN. Chociaż
komponenty Table oraz DataSource dmRENTMAN zostały ustawione, nie
możemy jeszcze dodać do tych tabel żadnego komponentu Tfield, ani łączyć
kolumn ze zbiorami atrybutów Delphi. Ukończenie definicji kolumn przed
konstruowaniem formularza, który z nich korzysta, oszczędza czas i gwarantuje, że
program zachowa logikę swoich formularzy.
Silverrun-RDM i tryb Delphi
Pierwszy ze sposobów umożliwiających wprowadzenie ograniczeń i masek na
poziomie kolumn korzysta z narzędzia Silverrun-RDM. Wspiera ono specjalny
tryb pracy Delphi, który umożliwia definiowanie zbiorów atrybutów i powiązanie
ich z kolumnami w relacyjnym modelu danych. Takie podejście pozwala na
scentralizowane definiowanie kolumn.
Słabą stroną tej metody jest konieczność definiowania zbioru atrybutów oddzielnie
od reszty modelu. Nie można po prostu importować ograniczeń określonych
w bazie danych, tak jak za pomocą Ekploratora Baz Danych Delphi (Delphi s
Database Explorer). Mimo tego ograniczenia wydaje się, że stosowanie narzędzia
Silverrun daje niewielką przewagę.
Importowanie informacji słownika danych (Data Dictionary
Information) z bazy danych
O wiele prostszą i, jak się wydaje, bardziej intuicyjną metodą importowania
informacji ze zbioru atrybutów, jest użycie Eksploratora Baz Danych do
bezpośredniego sprowadzenia ich z bazy danych. Bazy danych Interbase można
importować hurtowo do słownika danych Delphi. Tabele i kolumny utworzone
wcześniej staną się tabelami i kolumnami w słowniku danych, a domeny
(dziedziny) staną się zbiorami atrybutów.
Po dodaniu informacji z bazy danych do słownika danych Delphi trzeba będzie
przekształcić nowoutworzone kolumny i definicje atrybutów tak, aby zawierały
ustawienia specyficzne dla Delphi. Na przykład, można określić domyślne
310 Część II
komponenty kolumn, które odwołują się do zadanego zbioru atrybutów. Można
również zdefiniować specyficzny zbiór atrybutów dla masek edycyjnych, typów
pól oraz masek wyświetlania.
Istnieje możliwość przeciągnięcia obiektów bezpośrednio z Eksploratora Baz
Danych (Database explorer) do formularzy Delphi. Przeciągając tabelę lub
perspektywę z eksploratora do zwykłego formularza Delphi spowodujemy, że
zostaną w nim umieszczone komponenty Table, DataSource i DBGrid.
Delphi połączy ze sobą wszystkie elementy automatycznie. Przeciągając tabelę lub
perspektywę do formularza modułu danych, utworzymy wyłącznie komponent
Table.
Podobnie, z Eksploratora Baz Danych można przeciągnąć procedurę pamiętaną,
aby utworzyć komponent StoredProc.
Aby importować bazę danych RENTMAN do słownika danych Delphi, należy
postępować następująco:
1. Jeśli aplikacja RENTMAN jest uruchomiona, to należy ją zamknąć i powrócić
do Delphi.
2. Jeśli serwer InterBase nie działa, to należy go włączyć.
3. Wcisnąć kombinację klawiszy SHIFT+F12 oraz dwukrotnie kliknąć na liście
modułu danych dmRENTMAN, aby go otworzyć. W ten sposób powstanie
alias dbRENTMAN lokalnej bazy dmRENTMAN, który umożliwia
współpracę z Eksploratorem Baz Danych.
4. Wybrać opcję Database\Explore, aby uruchomić eksplorer (Database
Explorer).
5. Kliknąć na stronie Dictionary, a następnie wybrać opcję Dictionary\New.
6. W okmie dialogowym Create a new Dictionary (utworzyć nowy słownik)
wprowadzić nazwę słownika (Database name): RENTMAN, nazwę bazy
danych (Database): dbRENTMAN. W ten sposób słownik został nazwany
RENTMAN, a baza danych dbRENTMAN (lokalny alias - dbRENTMAN
został utworzony podczas definiowania komponentu Database modułu
danych).
7. Wpisać przejrzysty komentarz do pola Description (na przykład: RENTMAN
Data Dictionary) i zatwierdzić przyciskiem OK. Rysunek 10.1. ilustruje
wypełnione okno dialogowe.
Pierwsze formularze 311
Rysunek 10.1.
Tworzenie nowego
słownika danych
dla aplikacji
RENTMAN.
8. Na prośbę o nazwę użytkownika i hasło należy odpowiedzieć identyfikatorem
SYSDBA i hasłem masterkey.
9. Podwójnie kliknąć na liście w pozycji Dictionary, a następnie raz na pozycji
Databases. Na ponowne żądanie identyfikacji odpowiedzieć jak poprzednio.
10. Wybrać opcję Dictionary\Import z menu Database, po czym zaznaczyć na liście
bazę danych dbRENTMAN i zatwierdzić klawiszem OK. Należy się upewnić,
że został wybrany lokalny alias dbRENTMAN, a nie alias zdefiniowany
w rozdziale 9. Wybranie niewłaściwego aliasu uniemożliwi łatwy import
zbioru atrybutów słownika danych.
11. Na kolejne pytanie o personalia odpowiedzieć jak poprzednio.
12. Po krótkiej przerwie, eksplorator powinien zgłosić się ponownie wraz ze
sprowadzoną do słownika bazą dbRENTMAN. W bazie danych RENTMAN
powinna się znajdować specjalna tabela o nazwie BDESDD, zawierająca
słownik danych.
13. Aby upewnić się, że importowanie bazy dbRENTMAN przebiegło pomyślnie
należy podwójnie kliknąć Dictionary (na stronie Dictionary), a następnie
również podwójnie Databases. Podwójnie kliknąć dbRENTMAN, aby
zobaczyć informacje o słowniku danych. Podwójnie kliknąć ikonę
AttributeSets, aby stwierdzić, czy domeny RENTMAN zostały zaimportowane
jako zbiór atrybutów Delphi. Rysunek 10.2. ilustruje sprowadzone informacje
słownika danych.
312 Część II
Rysunek 10.2.
Słownik danych
RENTMAN.
Przekształcanie słownika danych
Wszelkie zmiany obiektów słownika danych powinny być dokonane przed
użyciem ich w formularzach. Postępując w ten sposób możemy być pewni, że
zdefiniowane atrybuty obiektów są dokładnie odzwierciedlone w formularzach.
Słownik danych RENTMAN może być modyfikowany na nieskończenie wiele
sposobów (czas i miejsce nie pozwalają na wyczerpujące omówienie zagadnienia).
Zajmiemy się wspólnie garstką przekształceń zbiorów atrybutów.
Poniższe punkty opisują przekształcanie słownika danych:
1. Kliknąć na zbiorze atrybutów TYESNO i określić jego specyfikację
TControlClass na TDBCheckBox. W ten sposób domyślny typ
komponentu dla rubryk zdefiniowanych przy użyciu TYESNO, został
ustawiony na DBCheckBox (z palety komponentów Delhi). Ilustruje to
rysunek 10.3.
Pierwsze formularze 313
Rysunek 10.3.
Można określić
komponenty, które
zostaną utworzone
podczas
przeciągania pól
do formularza.
2. Ustawić TDBComboBox jako domyślny komponent zbiorów atrybutów
TADDITION, TCITY i TSCHOOLDISTRICT (własność TControlClass).
Podczas budowy formularzy, które odwołują się do wymienionych zbiorów
atrybutów, będzie można wykorzystać listy edycyjne z właściwymi
wartościami.
3. Kliknąć na zbiorze atrybutów TSTATE i wpisać >AA do pola własności Edit
Mask, co zapewni, że wszystkie wartości wprowadzane do komponentów
z atrybutem TSTATE będą pisane dużymi literami.
4. Kliknąć własność (Default) zbioru TSTATE i ustawić ją na  TX . Spowoduje
to, że domyślną wartością pól Tfields, które są połączone z atrybutem
TSTATE, będzie Texas.
5. Kliknąć zbiór atrybutów TPHONE i wpisać !\(999\)000-0000 do jego
pola własności Edit Mask. Dzięki temu wszystkie wartości wprowadzone do
składników o wskazanym atrybucie będą sformatowane zgodnie z zasadami
pisania numerów telefonicznych w USA.
6. Ponownie kliknąć ikonkę Attribute Sets na liście wyboru karty, a następnie
zachować zmiany dokonane w zbiorach atrybutów - właściwym przyciskiem
Eksploratora Baz Danych (przycisk z niebieską strzałką skierowaną w prawo).
7. Ponieważ w programie RENTMAN można już używać słownika danych,
zamknąć Eksplorator Baz Danych i powrócić do Delphi. Za chwilę atrybuty
zdefiniowane w słowniku będzie już można importować do aplikacji
RENTMAN.
314 Część II
Przekształcanie modułu danych
Teraz, kiedy skompletowaliśmy już słownik danych, jesteśmy gotowi do włączenia
go do aplikacji. Zrobimy to, dodając komponent Tfield do każdej tabeli modułu
danych dmRENTMAN. Po utworzeniu definicji pola, będzie je można
wykorzystać wraz ze specyficznymi zbiorami atrybutów, utworzonymi
w Eksploratorze Baz Danych.
Przekształcanie tabel
Następujące czynności spowodują włączenie informacji słownika danych do
każdego komponentu Table bazy dmRENTMAN:
1. Podwójnie kliknąć na komponencie Table, aby uruchomić edytor pól (Fields
Editor)
2. Prawym przyciskiem myszy kliknąć na edytorze pól i wybrać pole Add
3. Wcisnąć przycisk OK okna dialogowego Add Fields - by utworzyć komponent
Tfield dla wszystkich kolumn w podstawowej tabeli bazy danych.
4. Ustawić własność Edit Mask każdego pola daty na: !99/99/00;1;_.
Dotyczy to pól: LASTLAWNDATE, LASTSPRAYDATE, BEGINDATE,
ENDDATE, MOVEDINDATE, MOVEDOUTDATE, CALLDATE i STARTDATE.
5. Ustawić własność EditMask każdego pola czasu na !99:00>LL;1;_.
Dotyczy to pola CALLTIME
6. Zamknąć edytor pól, klikając przycisk zamykania na ramce okna.
7. Powtórzyć powyższy algorytm dla każdego elementu Table modułu danych.
Aby sprawdzić rezultat pracy, należy (po jej zakończeniu) kliknąć prawym
przyciskiem myszy na komponencie taPROPERTY i wybrać Fields Editor,
a następnie kliknąć pole STATE. Informacje zbioru atrybutów kolumny można
sprawdzić w Inspektorze Obiektów (Object Inspector). Powinniśmy zobaczyć to
tak, jak na rysunku 10.4.
WSKAZÓWKA
Można szybko zaznaczyć kolejne pola w edytorze pół (Fields Editor),
umieszczając kursor na pierwszym polu a następnie przemieszczając kursor w dół
przy pomocy klawisza strzałki, mając cały czas wciśnięty klawisz SHIFT. Aby
zaznaczyć kilka pól nie leżących bezpośrednio po sobie, należy, mając zaznaczone
pierwsze pole, wcisnąć kombinację klawiszy SHIFT+F8, a następnie przenosić
kursor do kolejnych pól, zaznaczając wybrane klawiszem spacji.
Pierwsze formularze 315
Rysunek 10.4.
Zdefiniowane
w Eksploratorze
Baz Danych zbiory
atrybutów
wprowadzone do
aplikacji
Formularz szybkiego wprowadzania i edycji danych do
tabeli EMPLOYEE
Następnym etapem budowy programu RENTMAN jest stworzenie formularza
szybkiego wprowadzania danych do tabeli EMPLOYEE; będzie się nazywał
fmREMPENT0. Istnieje prosta i trudna droga prowadząca do powstania formularza
bazy danych. Spróbujmy najpierw tej łatwiejszej (wykorzystując kreator
formularzy baz danych), a następnie tej mieniącej się trudną (budując formularz
ręcznie). Kreator formularzy baz danych nie pozwala zrobić użytku z hierarchii
formularzy, dlatego nie jest rozwiązaniem, które można wykorzystywać
permanentnie. Należy jednak użyć go choć raz, aby poczuć potencjał kreatorów
Delphi.
Tworzenie formularza przy użyciu Kreatora formularzy baz danych
(Database Form Wizard)
Kreator formularzy uruchamia się, wybierając opcję Database\Form Wizard
w głównym menu Delphi. Zadaniem Kreatora jest skonstruowanie formularza
zgodnie z życzeniami użytkownika poprzez zadawanie mu pytań. Pierwsze pytanie
dotyczy wyboru typu formularza (prosty czy kombinowany) oraz rodzaju
komponentu, którego ma użyć (Table lub Query). Ponieważ w tej chwili
zadowalają nas ustawienia domyślne, przechodzimy do następnego etapu klikając
przycisk Next (por. rysunek 10.5.)
316 Część II
Rysunek 10.5.
Otwarte okno
kreatora
formularzy baz
danych.
Kolejne pytanie wymaga wskazania tabeli, która ma być obsługiwana przez
formularz. Rozpoczniemy od wskazania na dysku aliasu dbRENTMAN lub od
wybrania jego nazwy z rozwijalnej listy. Po dokonaniu wyboru dbRENTMAN lista
tabeli zmieni się, odwzorowując bazę danych RENTMAN. Klikamy dwukrotnie
tabelę EMPLOYEE, znajdującą się blisko szczytu listy. (por. Rysunek 10.6.)
Rysunek 10.6.
Wybór tabeli dla
Kreatora
formularzy baz
danych.
W kolejnym kroku Kreator zaprezentuje nam listę pól wybranej tabeli. Możemy
wybierać je kolejno, za pomocą przycisku > lub wszystkie razem - przy użyciu
klawisza >>. Klikamy przycisk >>, a następnie Next, przechodząc do następnego
etapu (por. Rysunek 10.7).
Rysunek 10.7.
Wybieranie pól
tabeli w Kreatorze
formularzy.
Pierwsze formularze 317
Następną decyzją, którą musimy podjąć, jest określenie orientacji pól na nowym
formularzu. Możemy wybrać poziomą (Horizontal), pionową (Vertical) lub
tabelaryczną (Grid). Klikając przycisk Next, wybieramy orientację poziomą
(domyślną).
Kolejnym i ostatnim krokiem jest odpowiedz na pytanie, czy tworzony formularz
ma być głównym formularzem aplikacji. Pole wyboru na górze okienka
markowane jest krzyżykiem oznaczającym domyślną opcję: Generate a main form.
Likwidujemy to zaznaczenie, albowiem nasza aplikacja posiada już główny
formularz o nazwie fmRSYSMAN. Kończymy pracę Kreatora, wciskając przycisk
Create (utwórz). Rysunek 10.8. ilustruje efekt działania Kreatora.
Rysunek 10.8.
Formularz
wprowadzania
i edycji tabeli
EMPLOYEE
utworzony przy
pomocy Kreatora
formularzy.
Formularz posiada własne komponenty Table i DataSource. Inne formularze,
które utworzymy, będą korzystać z odpowiednich komponentów dmRENTMAN.
Aby formularz używał tych samych elementów, co pozostałe, możemy go zmienić
w następujący sposób:
1. Usunąć z formularza oba komponenty Table i DataSource.
2. Znalezć kod zdarzenia FormCreate formularza i usunąć linię:
Table1.Open;
Teraz formularz nie będzie już próbował otworzyć usuniętych komponentów.
3. W menu Delphi wybrać opcję File\Use Unit i dwukrotnie kliknąć na pozycji
RENDATA listy modułów, tak jak przedstawia rysunek 10.9.
Rysunek 10.9.
Aączenie modułów
w opcji File\Use
Unit.
318 Część II
4. Wybrać komponent DBNavigator wraz z dwoma komponentami DBEdit.
5. Zmienić własność DataSource wszystkich trzech elementów na
dmRENTMAN.dsEMPLOYEE.DataSource. (Powinna być w rozwijalnej liście
własności DataSource.)
Teraz, w czasie testowania formularza, będziemy pracować na oryginalnych
komponentach Table i DataSource systemu RENTMAN.
Testowanie nowego formularza
Najprostsza metoda wypróbowania nowego formularza polega na połączeniu go
z programem RENTMAN, co można zrobić w następujący sposób:
1. Zaznaczyć formularz fmRSYSMAN, a następnie Use Unit w menu File i wybrać
z listy pozycję Unit1.
2. Dwukrotnie kliknąć na komponencie MainMenu formularza.
3. Wybrać menu Tables i dwukrotnie kliknąć listę na pozycji Employee. W tym
miejscu włączy się edytor kodu Delphi, który umożliwia dołączenie kodu
uruchamiającego formularz po wybraniu odpowiedniego elementu menu.
4. Ponieważ nowy formularz posiada nie zmienioną, domyślną nazwę Form1,
wprowadzić przy pomocy edytora następującą linię kodu, tak jak to
przedstawiono na rysunku 10.10:
Form1.Show;
Rysunek 10.10.
Podłączenie
nowego formularza
do aplikacji
RENTMAN.
Dzięki temu nowy formularz zostanie wyświetlony zarówno po wybraniu pozycji
Employees w ofercie Table, jak i po wciśnięciu klawisza szybkiego dostępu F8.
Teraz można uruchomić aplikację, aby wypróbować nowy formularz. Włączamy
program, wciskając F9 lub klikając przycisk Run.
Pierwsze formularze 319
Po wystartowaniu programu wciskamy klawisz F8. Rysunek 10.11 ilustruje
wygląd formularza podczas normalnej pracy.
Formularz jest w pełni operatywny; możemy dodawać, usuwać i edytować rekordy
bazy danych. Próbujemy dodawania rekordów klawiszem + z grupy narzędzi
DBNavigator oraz usuwania ich, klawiszem -. Test kończymy wyłączeniem
zarówno formularza, jak i aplikacji, po czym wracamy do Delphi.
Rysunek 10.11.
Wygląd nowego
formularz podczas
działania
programu.
Usuwanie nowego formularza z projektu
Ponieważ nowy formularz nie używa hierarchii formularzy, to nie będzie on
podobny do pozostałych elementów aplikacji. Usuwamy go z projektu
w następujący sposób:
1. Kliknąć klawisz Remove file from project na pasku narzędziowym Delphi lub
wybrać z menu opcję Remove from Project.
2. Podwójnie kliknąć pozycję Unit1 na liście i usunąć moduł z projektu.
3. Na pytanie, czy zachować Unit1, odpowiedzieć: nie.
4. Usunąć linię kodu wprowadzoną w poprzedniej części rozdziału poprzez edycję
fmRSYSMAN0 (Form1.Show).
5. Z nagłówka fmRSYSMAN usunąć linię kodu zawierającą deklarację Uses
Unit1.
Budowa nowego formularza z zastosowaniem Wizualnego Projektanta
Delphi (Delphi s Visual Designer)
Spróbujemy teraz drogi trudniejszej, choć w rzeczywistości druga metoda
konstruowania formularzy nie będzie tak bardzo skomplikowana.
Utworzymy formularz fmREMPENT0, wykonując poniższe czynności:
320 Część II
1. Wybrać z menu Delphi opcję File\New.
2. Wybrać stronę Form, a następnie pozycję fmEditForm na liście formularzy.
3. Kliknąć przycisk opcji Inherit i zatwierdzić przyciskiem OK. W wizualnym
projektancie formularzy powinien się ukazać formularz o nazwie
fmEditForm1.
4. Zmienić nazwę formularza na fmREMPENT0 (własność Name) i jego
nagłówek (Caption) na EMPLOYEE Quick Entry/Edit Form (formularz
szybkiego wprowadzania i edycji tabeli EMPLOYEE).
5. Wybrać opcję File\Use Unit i podwójnie kliknąć moduł RENDATA - aby dodać
moduł danych programu RENTMAN do deklaracji modułów nowego
formularza (deklaracja Uses ..).
6. Po lewej stronie formularza umieścić następnie dwa komponenty etykiet
i wyrównać je pionowo jedna nad drugą.
7. Wprowadzić nagłówki etykiet &EmployeeNo - dla górnej i odpowiednio
&Name - dla dolnej.
8. Umieścić dwa składniki DBEdit po prawej stronie formularza i wyrównać je
względem etykiet- zarówno w pionie, jak i w poziomie.
9. Górny element nazwać dedEmployeeNo, a dolny dedName.
10. Powiększyć rozmiar elementu dedName, tak aby jego szerokość była mniej
więcej dwukrotnie większa od szerokości elementu dedEmployeeNo. Przy
jego pomocy będzie można edytować rubrykę Name tabeli EMPLOYEE,
zawierającą nazwiska pracowników, co wymaga nieco większej przestrzeni.
11. Ustawić własności etykiet FocusControl, aby odpowiadały odpowiednim
komponentom: górnej - elementowi dedEmployeeNo, dolnej - składnikowi
dedName. Pozwoli to używać klawiszy szybkiego dostępu etykiet do
uaktywniania edycji odpowiedniego elementu.
Rysunek 10.12 ilustruje nowy formularz w całej okazałości.
Pierwsze formularze 321
Rysunek 10.12.
Formularz
fmREMPENT0
razem
z umieszczonymi
na nim etykietami
i elementami
edycyjnymi
DBEdit.
WSKAZÓWKA
Elementy kontrolne danych i etykiety można łatwo umieszczać na formularzu,
stosując technikę przeciągania komponentów Tfield z listy pól DataSet. Robi
się to następująco:
1. Umieścić moduł danych dmRENTMAN na górze projektanta formularzy, tak aby
móc widzieć odpowiedni fragment formularza.
2. Prawym klawiszem myszy kliknąć element DataSet, zawierający te pola, które
chcemy użyć oraz wybrać edytor pól (Fields Editor) z podręcznego menu.
3. Przeciągnąć pole z edytora pól na właściwe miejsce formularza.
W odpowiednim miejscu powinny się ukazać zarówno kontrolki danych, jak
i odpowiadające im etykiety.
4. Należy pamiętać, że informacja o rodzaju kontrolek tworzonych dla danego
pola decydują własności TControlClas i związany z nią zbiór atrybutów.
Połączenie formularza z modułem danych
Połączymy teraz nowy formularz z modułem danych RENTMAN, tak aby miał
dostęp do obiektów bazy danych. Połączenie zdmRENTMAN tworzymy
następująco:
1. Z menu File wybrać opcję Use Unit i dwukrotnie kliknąć na pozycji RENDATA
listy modułów.
2. Wybrać kontrolki formularza DBEdit oraz DBNavigator i ustawić ich własność
DataSource na wspólną tablicę: dmRENTMAN.dsEmployee.
3. Zlikwidować zaznaczenie wszystkich trzech kontrolek i ustawić własność
DataField każdego elementu DBEdit na odpowiadające mu pole tabeli
322 Część II
Employee. Element dedEmployeeNo odpowiada rubryce EMPLOYEE_
NUMBER a dedName polu NAME.
W ten sposób formularz szybkiego wprowadzania danych i edycji tabeli
EMPLOYEE został ukończony. Należy jeszcze zachować go jako
REMPENT0.PAS w zródłowym katalogu programu RENTMAN.
Testowanie nowego formularza
Po zachowaniu formularza można rozpocząć jego testowanie. Aby sprawdzić
formularz w działaniu, należy wykonać następujące czynności:
1. Wybrać formularz fmRSYSMAN w wizualnym projektancie formularzy
i dwukrotnie kliknąć jego komponent menu mmRENTMAN.
2. Wybrać menu Tables i dwukrotnie kliknąć opcję Employee.
3. Do menu wpisać kod zdarzenia opisującego kliknięcie opcji:
fmREMPENT0.Show.
4. Dzięki temu nowy formularz będzie wyświetlany po wybraniu z menu pozycji
Employee.
5. Zamknąć projektanta menu i wybrać opcję Use Unit z oferty File.
6. Na liście modułów dwukrotnie kliknąć pozycję REMPENT0. Dzięki temu
główny formularz programu RSYSMAN0 stosował będzie modułu, który
definiuje formularz fmREMPENT0. W czasie kompilacji i uruchamiania
programu będzie wywoływana odpowiednia metoda Show.
7. Zachować projekt RENTMAN i uruchomić go. Rysunek 10.13 ilustruje wygląd
formularza w czasie pracy programu.
Rysunek 10.13.
Kompletny
formularz
fmREMPENT0.
Pierwsze formularze 323
Formularz szybkiego wprowadzania i edycji danych tabeli
WorkType
Tworzenie formularza dla tabeli EMPLOYEE zakończyliśmy sukcesem. Przed
nami kolejny formularz, tym razem dla tabeli Work Type. Zachęcamy
czytelnika, aby bez prowadzenia za rękę spróbował wykonać go samodzielnie,
przestrzegając jedynie poniższych wskazówek:
nowego formularza brzmi fmRWKTENT0, a nagłówek Work Type
Nazwa
Quick Entry\Edit Form (Formularz szybkiego wprowadzania i edycji
danych tabeli WorkType).

Formularz, podobnie jak poprzedni, dziedziczy własności klasy fmEditForm.
się upewnić, że zostały zdefiniowane litery szybkiego dostępu
Należy
w etykietach (przy pomocy symbolu  & ), oraz że ich własności
FocusControl wskazują odpowiednie kontrolki danych.
nazywaniu komponentów należy przestrzegać konwencji przyjętej
Przy
w rozdziale 4.

Kontrolki danych powinny wskazywać komponent DataSource o nazwie
dmRENTMAN.dsWORKTYPE.
można zapomnieć o konieczności zapewnienia dostępu do obiektów bazy
Nie
danych poprzez deklarację modułu RENDATA, za pośrednictwem opcji
File | Use Unit.
pomocy własności DataField trzeba połączyć komponenty DBEdit
Przy
z odpowiednimi polami tabeli WORKTYPE.
kończymy (podobnie jak przy poprzednim formularzu) połączeniem
Pracę
nowo utworzonego formularza z głównym ekranem programu RENTMAN.
Rysunek 10.4. ilustruje skompletowany formularz w czasie pracy programu.
Rysunek 10.14.
Skompletowany
formularz
fmRWKTENT0.


Wyszukiwarka

Podobne podstrony:
ROZ10
roz10
ROZ10
Delphi Kompendium Roz10
allesklar+zp roz10 test10b
ROZ10
allesklar+zp roz10 test10a
haasPl roz10
roz10

więcej podobnych podstron