Wydział Transportu PW
Laboratorium z informatyki sem.ll / ćw.10
Zadanie
Utworzyć aplikację w środowisku Delphi, która umożliwia:
0 odczytanie z pliku tekstowego danych o ocenach studentów 0 wybór danych według grup lub ocen, wyświetlenie wyników wyboru w polu listy i zapisanie do pliku tekstowego 0 zapisanie danych do pliku elementowego o strukturze rekordowej.
Na zajęciach należy wykorzystać plik z danymi o nazwie Oceny.txt, w którym są zapisane informacje o studentach i ocenach.
1. Skopiuj plik Occny.txt z foldera sieciowego Informatyka na Novel411...\ INF2\L10 do foldera D:\13z.
Otwórz plik w notatniku i obejrzyj jego zawartość.
2. Nadaj formie tytuł i zapisz aplikację w folderze D:\Bz. Umieść na formie komponenty z zakładki Win32:
• listę obrazków ImageListl i załaduj do listy obrazki Fldropen, Filesave, Floppy
• pasek narzędziowy TooIBarl z trzema przyciskami narzędziowymi; nadaj przyciskom nazwy WczytajDane, ZapiszWybor,
ZapiszRekordy i odpowiednie objaśnienia; przypisz do paska listę obrazków ImageListl
• pasek stanu StatusBarl z dwoma panelami, nadaj panelom szerokość 200.
3. W palecie komponentów przejdź do zakładki Standard i umieść na formie kolejne komponenty:
• komponent GroupBox1 z tytułem Kryteria wyboru, a w nim:
> dwa pola wyboru CheckBox1 i CheckBox2; nadaj im tytuły odpowiednio Grupa i Ocena
• dwie listy rozwijalne ComboBox1 i ComboBox2 o stylu (właściwość Style) csDropDownList wypełnij listy wpisując odpowiednie teksty w wierszach edytora właściwości Items;
- lista ComboBox1 ma zawierać symbole grup od T1 do T8
- w kolejnych wierszach listy ComboBox2 wystąpią oceny: 2 3 3,5 4 4,5 5 dla każdej listy rozwijalnej nadaj właściwości ltemlndex wartość 0
• rozwijalną listę ComboBox3 o stylu csDropDownList, nad nią wstaw etykietę o tytule Lista Danych
Operacje na danych tekstowych
Lista danych
Wybór danych
Kryteria wyboru r Grupa jri" V|
r Ocena ^
pole listy ListBox1 o czcionce Courier New; nad polem listy wstaw etykietę o tytule Wybór danych.
Przejdź do zakładki Dialogs i umieść na formie komponenty OpenDialogi .==J, SaveDialogl ™.;
dla komponentu SaveDialogl wpisz txt jako wartość właściwości DcfauKExt (rozszerzenia dopisywanego
automatycznie do nazwy pliku).
Filter Editor
Filter Name Pitki tekstowe Wszystkie pjiki
| Filter Mxt
Zaznacz komponent OpcnDialogl.
W oknie Inspektora Obiektów kliknij w polu Filter otwierając edytor filtrów. Wpisz nazwy i wartości dwóch filtrów, jak na rysunku obok.
1. Utwórz procedurę obsługi kliknięcia dla przycisku WczytajDane i oprogramuj ją jak następuje:
if OpenDialogl.Execute then with OpenDialogl do begin
ComboBox3.Items.LoadFromFile(FileName); ComboBox3.Itemlndex:=0; StatusBarl.Panels[0].Text:= FileName;
end;
Zapisz wprowadzone zmiany, a następnie uruchom aplikację i wypróbuj działanie przycisku:
2. No początku części implementacyjnej zadeklaruj typ rekordowy i tablicę rekordów:
type Student = record nr_alb: string[6J;
nazwisko: string[22]; grupa: str.ing[2j; data: TDatoTime; ocena: Double;
end;
var Dane: array [0..299] of Student; Lrek: Integer;