10 2

10 2



Wydział Transportu PW


Laboratorium z informatyki sem.l! / ćw.10

3. Zadeklaruj metodę formy, przepisującą dane z wierszy listy rozwijanej do rekordów tablicy: procedurę TForml.DopiszRekordy; var i:    Integer;

begin

Lrek:= ComboBox3 . Items . Count;

for i:=0 to Lrek-1 do with ComboBox3, Dane[i] do begin nr_aib:= Copy(Items[i],    1,    6);

nazwisko:= Copy(Items[i] ,    8,    22);

• grupa : = Copy (Items [i ] , 31, ~2) ; data:= StrToDate(Copy(Items[i], 34,    8));

ocena:= StrToFloat(Copy(Items[i] , 43, 3)); end; end;

Na końcu procedury WczytajDaneClick dodaj wywołanie procedury DopiszRekordy.

III    Wyświetlanie i zapisywanie wyboru danych

1.    Zaznacz oba pola wyboru CheckBox i za pomocą Inspektora Obiektów utwórz dla nich procedurę kliknięcia o nazwie KryteriaClick, która przepisze do pola listy dane z tych wierszy listy rozwijanej ComboBox3, które spełniają zaznaczone kryteria wyboru grupy i/lub oceny. Oprogramuj procedurę jak następuje:

ListBoxl.Items.Clear;

for ,i. := 0 to Lrek-1 do begin

if CheckBoxl.checked and (Dane[i].grupa<>ComboBoxl.Text) or

CheckBox2 . checked and ( Dane li]. ocenaoStrtoFloat (ComboDox2 . Text) ) then //niewybrana pozycja listy else ListBoxl.Items.Add(ComboBox3.Items[i]); end;

2.    Utwórz i oprogramuj procedurę obsługi zdarzenia OnChange dla listy rozw ijanej ComboBoxl, która po zmianie grupy wywoła procedurę wyświetlającą wybrane dane; wpisz w jej treści następujące instrukcje:

CheckBoxl.Checked:= True;

KryteriaClick(Sender) ;

Analogicznie oprogramuj zdarzenie OnChange dla listy rozwijanej ComboBox2.

3.    Utwórz procedurę obsługi kliknięcia dla przycisku ZapiszWybor i oprogramuj ją jak następuje:

if SaveDialogl.Execute then begin

Lis tBox] . I teras . SaveToFile {SaveDialogl. FileName) ;

StatusBari.Panels[1].Text:= SaveDialogi.FileName; end;

Zapisz zmiany i sprawdź działanie oprogramowanych komponentów.

IV    Zapisywanie danych w pliku elementowym

1.    Utwórz procedurę obsługi kliknięcia dla przycisku ZapiszRekordy o następującej treści:

procedurę TForml.ZapiszRekordyClick(Sender: TObject);

var f: file of Student; i: Integer;

begin

AssignFile(f,    'Studenci.rec');

try

rewrite(f); ShowMessage(1 Utwórzono plik Studenci.rec'); for i:=0 to Lrek-1 do write(f, Dane[i]); finally

CloseFile(f); end; end;

Zmienna f zadeklarowana w powyższej procedurze reprezentuje plik danych o określonym typie elementów. Wywołanie procedury AssignFile ( f,    ’ Studenci . rec' ) przypisuje jej nazwę fizycznego pliku w folderze

v U*    V.ćr.    'v.vcczrr.y ic    wy-*    z- ' i 1 v‘i    ’'t

aanycn są zapisywane do pliku przez wywoływanie w pętli for procedury wri. te ( f, Dane L j ] j.

Bo zakończeniu zapisu plik zostaje zamknięty przez wywołanie proceduiy CloseFile ( i).

2.    Zapisz projekt i moduł aplikacji. Uruchom aplikację i sprawdź jej działanie.

Rozwinięcie aplikacji

□    Dodać dodatkowe kryterium wyboru danych według pier wszej litery nazwiska. W tym ceiu dodać listę rozwijaną z literami alfabetu i odpowiadający jej komponent CheckI3ox3 do pola grupy oraz uzupełnić warunek wr procedurze KryteriaClick o dodatkową część związaną z zaznaczeniem CheckBox3.

Pierwszą literę z pola nazwisko rekordu tablicy Dane można w wybrać funkcją Copy(Danc[i],nazwisko,], I);

□    Dodać przycisk narzędziowy wczytujący dane z wybranego w dialogu pliku elementowego do tablicy rekordów i dopisujący zawartość rekordów w postaci wierszy tekstu w rozwijanej liście ComboBox3.


Wyszukiwarka

Podobne podstrony:
10 1 Wydział Transportu PW Laboratorium z informatyki sem.ll / ćw.10 Zadanie Utworzyć aplikację w
3 3 Wydział Transportu PW Laboratorium z informatyki sem.II. ćw. 3 Materiały pomocnicze do ćwiczenia
1 1 Wydział Transportu PW Laboratorium z informatyki sem.II/ ćw. 1 Zadanie Utworzyć aplikację w środ
11 1 Wydział Transportu PW Laboratorium z informatyki sem.ll / ćw.11 Zadanie Rozbudować aplikację z
11 3 Wydział Transportu PW Laboratorium z informatyki sem.IL/ ćw. 11Materiały pomocnicze do ćwiczeni
11 4 Wydział Transportu PW Laboratorium z informatyki sem.II./ ćw. 11Zagnieżdżanie instrukcji
cw8b Wydział Transportu PW Laboratorium informatyki sem. II / ćw. 8III    Generowanie

więcej podobnych podstron