Komponenty z karty Dialogs
Korzystanie z komponentu OpenDialog
Komponent ten wyświetla znane z aplikacji Windows okno dialogowe otwarcia pliku. Uruchamiany jest przez wywołanie metody Execute.
Rysunek 1 - Okno dialogowe OpenDialog
Ćwiczenie 2.11
Zadanie aplikacji
Przeglądanie plików tekstowych. Pliki pobierane są poprzez OpenDialog.
Nowe umiejętności
Korzystanie z komponentu OpenDialog.
Umieść na formularzu pole Memo.
Dodaj komponent OpenDialog z karty Dialogs. Jest to komponent niewidoczny, otwierający dialog wyboru pliku z dysku.
Klikając w polu właściwości Filter, przejdź do edytora filtrów i wpisz w tabelce pod wskazanym nagłówkiem:
Filter Name |
Filter |
Tekstowe |
*.txt |
Programy w Pascalu |
*.pas |
Wszystkie pliki |
*.* |
Ustaw właściwości:
FilterIndex 1 // wybiera pierwszą maskę plików jako domyślną
InitialDir C:\Moje dokumenty //ustawia katalog domyślny
Umieść na formularzu SpeedButton (przycisk szybkiego reagowania) z karty Additional - będzie to przycisk otwierający dialog. Umieść na przycisku rysunek kojarzący się z otwarciem pliku:
kliknij w polu właściwości Glyph i przejdź do Picture Editor
kliknij przycisk Load, przejdź do katalogu Delphi\Images\Buttons
wybierz właściwy rysunek i zatwierdź wybór.
Dla zdarzenia OnClick komponentu SpeedButton wpisz procedurę:
procedure TForm1.SpeedButton1Click(Sender:TObject);
begin
If OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
end;
Sprawdź działanie aplikacji.
Zadanie 1
Dodaj do aplikacji obsługę błędu.
Korzystanie z komponentu SaveDialog
Jest to komponent, który wyświetla okno dialogowe zapisywania (zachowania) pliku. Uruchamiany jest przez wywołanie metody Execute.
Rysunek 2 - Okno dialogowe SaveDialog
Ćwiczenie 2.12
Zadanie aplikacji
Aplikacja zapisuje przeglądany obrazek do pliku o wskazanej nazwie.
Nowe umiejętności
Zastosowanie komponentu SaveDialog.
Otwórz poprzednią aplikację.
Dodaj do formularza komponent SaveDialog (karta Dialogs) oraz SpeedButton z rysunkiem zamknięcia.
Podobnie jak w poprzednim ćwiczeniu, ustaw filtry oraz właściwości FilterIndex i InitialDir. Ustaw właściwość:
DefaultExt txt //nadawanie domyślnego rozszerzenia zapisywanym plikom
Dla zdarzenia OnClick komponentu SpeedButton wpisz:
begin
if SaveDialog1.Execute then
Memo1.Lines.SaveToFile(SaveDialog1.FileName);
end;
Sprawdź działanie aplikacji
Korzystanie z komponentu OpenPictureDialog i SavePictureDialog
Komponent ten różni się od poprzednio omawianego OpenDialog udostępnieniem możliwości oglądania selekcjonowanych plików graficznych.
Rysunek 3 - Okno dialogowe OpenPictureDialog
Ćwiczenie 2.13
Zadanie aplikacji
Przeglądarka plików graficznych zapisanych w formacie *.bmp na dysku. Pliki pobierane są poprzez OpenDialog.
Nowe umiejętności
Korzystanie z OpenPictureDialog.
Umieść na formularzu komponent Image z karty Additional. Ustaw właściwość:
Stretch True //dostosowanie obrazka do rozmiarów komponentu Image
Dodaj komponenty OpenPictureDialog i SavePictureDiaIog z karty Dialogs.
Wstaw na formularzu dwa przyciski, ustaw napisy na przyciskach: Otwórz i Zachowaj. Przypisz procedury:
o do przycisku Otwórz:
procedure TForm1.Button1Click (Sender: TObject);
begin
If OpenPictureDialog1.Execute then
Image1.Picture.LoadFromFile(OpenPictureDialog1.Filename); end;
do przycisku Zachowaj:
procedure TForm1.Button2Click (Sender: TObject);
begin
if SavePictureDialog1. Execute Then
Image1.Picture.SavetoFile(SavePictureDialog1.Filename);
end;
Korzystanie z komponentu ColorDialog
Jest to komponent, który wyświetla okno dialogowe wyboru koloru. Uruchamia-o jest przez wywołanie metody Execute.
Cgciy podstawowe:
r~ r~ r~tz r~ o' r~ r~
o ~r"iiir~ii!F~iii mrrsmwir^um mrmmmmmm
mmmmmmmm BjjCT ^ r^ K l H i
Csiny raestandardowe:
^rrrrrrr ^rrrrr rrr
Zdefiniuj kolory niestandardowe "
Rysunek 26. Okno dialogowe ColorDialog
Ćwiczenie 2.14
Jadanie aplikacji , ,
Ustawianie koloru komponentu Shape przy użyciu komponentu ColorDialog.
Mowę umiejętności , ! >
Stosowanie komponentu ColorDialog.
I. Wstaw na formularzu przycisk z napisem Nowy koi o r oraz komponenty: Shape, ColorDialog.
Z. Dla zdarzenia OnClick przycisku Nowy kolor wpisz procedurę:
procedurę TForml.ButtonlClick(Sender: TObject); begln
1f ColorDialogl.Execute then
Shapel.Brush.Color := ColorDialogl.Color; end;
3. Sprawdź działanie aplikacji.