Dialogi

TOpenDialog
TSaveDialog
TColorDialog
TFontDialog
TPrintDialog
TPrinterSetupDialog
TFindDialog
TReplaceDialog

W delphi zaimplementowano zestaw gotowych komponentów realizujących funkcje standardowych dialogów aplikacji Windows.

Komponenty są niewidzialne dopóki nie zostana zaktywizowane poprzez wywołanie metody Execute.

Metoda Execute jest bezparametrową funkcją zwracającą wartość logiczną uzależnioną sposobem zakończenia sesji z aktywnym dialogiem przez użytkownika. Niezależnie od typu dialogu, Execute zwraca wartość True o ile użytkownik zatwierdził informacje zawarte w elementach składowych dialogu. Jeśli zakończył dialog bez zatwierdzenia (np. przyciskiem Anuluj, lub zwykłym zamknięciem okna przyciskiem "x") Execute zwraca wartość False.

Klasyczny sposób wykorzystania dialogu:

 if JakisDialog.Execute then
 begin
  //instrukcje wykonywane w razie 
  //pozytywnego zakończenia
  //sesji z dialogiem
 end;

TOpenDialog

Dialog otwarcia pliku.

Kluczowa właściwość:

Przykład:

 //załadowanie do Memo linii z wybranego pliku
 if OpenDialog1.Execute then
   Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

Inne właściwości:

Góra

TSaveDialog

Dialog zapisu pliku.

Kluczowa właściwość:

Przykład:

 //zapis do wybranego pliku tekstu z Memo
 if SaveDialog1.Execute then
   Memo1.Lines.SaveToFile(OpenDialog1.FileName);

Inne właściwości:

Góra

TColorDialog

Dialog wyboru koloru.

Kluczowa właściwość:

Przykład:

 //zdefiniowanie koloru formularza
 if ColorDialog1.Execute then
   Form1.Color:=ColorDialog1.Color;
Góra

TFontDialog

Dialog wyboru czcionki.

Kluczowa właściwość:

Przykład:

 //zdefiniowanie czcionki Memo
 if FontDialog1.Execute then
   Memo1.Font.Assign(FontDialog1.Font);
Góra

TPrintDialog

Dialog wydruku.

Warunkiem działania jest zainstalowanie sterowników drukarki w systemie.

Właściwości:

Uwaga! Zatwierdzenie dialogu nie powoduje wydruku, a jedynie umożliwia aplikacji odczyt i zastosowanie się do ustawień dokonanych przez użytkownika w dialogu.

Góra

TPrinterSetupDialog

Dialog umożliwiający dokonanie edycji ustawień zainstalowanej w systemie drukarki.

Góra

TFindDialog

Standardowy dialog wyszukiwania zadanego fragmentu tekstu.

Kluczowe właściwości i zdarzenia:

Przykład obsługi zdarzenia OnFind:

procedure TForm1.FindDialog1Find(Sender: TObject);
var i: integer;
begin
 i := Pos(FindDialog1.FindText, Memo1.Lines.Text);
 If i > 0 then
 begin
   Memo1.SetFocus;
   Memo1.SelStart:= i - 1;
   Memo1.SelLength :=Length(FindDialog1.FindText) ;
 end;
end;

Funkcja Pos (z dwoma parametrami typu łańcuchowego s1 i s2) wyszukuje łańcuch s1 w s2 i zwraca znalezioną pozycję (a sciśle mówiac zwraca numer pierwszego znaku w łańcuchu s2, od którego zaczyna się łańcuch s1). Właściwości Memo SelStart i SelLength określają zaznaczony fragment tekstu w Memo; żeby ich modyfikacje miały wizualny efekt Memo1 musi być bieżącą kontrolką - stąd konieczność użycia metody SetFocus.

Góra

TReplaceDialog

Standardowy dialog wyszukiwania żądanego fragmentu tekstu.

Kluczowe właściwości i zdarzenia:

Góra