Pliki wchodzące w skład projektu Rozmiar formatki, okna. Wyświetlanie okien komunikatów Rzutowanie Konwersja Tworzenie standardowych przycisków



Podobne dokumenty
Delphi podstawy programowania. Dialogi

Delphi podstawy programowania. Środowisko Delphi

Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej:

PROGRAM: WYSZUKANIE LICZBY MAKSYMALNEJ

Ćwiczenie 1 Proste aplikacje - podstawowe komponenty.

Cel: Zastosowanie okien pytającychwyświetlających pytania i komunikaty (MessageBox). Klub IKS

Programowanie w środowisku graficznym GUI

1. Wybierz File New Application. Pojawi się nowa aplikacja w Delphi.

Wprowadzenie do systemu Delphi

Tak przygotowane pliki należy umieścić w głównym folderze naszego programu. Klub IKS

KROK 17 i 18. Cel: Tworzymy oddzielne okno - O autorze. 1. Otwórz swój program. 2. Skompiluj i sprawdź, czy działa prawidłowo.

Nazwa implementacji: Kółko i krzyżyk w Lazarusie. Autor: Piotr Fiorek Andrzej Stefaniuk

Ćwiczenie 6 Proste aplikacje - podstawowe komponenty.

Tworzenie okna dialogowego w edytorze raportu SigmaNEST. część 1

W kolejnym odcinku zajmiemy się umieszczaniem w naszym projekcie zestawu ikon służących szybkiemu korzystaniu z opcji programu.

Wydział: ZiMK Przedmiot: Programowanie - Delphi Semestr 5

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.

Delphi Laboratorium 3

Właściwości i metody obiektu Comment Właściwości

Kierunek: ETI Przedmiot: Programowanie w środowisku RAD - Delphi Rok III Semestr 5. Ćwiczenie 5 Aplikacja wielo-okienkowa

Budowa aplikacji z graficznym interfejsem użytkownika - GUI (Graphic User Interface)

Zastanawiałeś się może, dlaczego Twój współpracownik,

Podstawy Programowania 2

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

1. Przypisy, indeks i spisy.

Cel: Przypisujemy przyciskom określone funkcje panel górny (Panel1)

Program powinien otworzyć się z pierwszym formularzem. Jeśli nie, otwórz pierwszy formularz, wybierając go z listy - Shift+F12.

Gdy z poziomu programu Delphi otworzysz folder pierwszy program, zauważysz tylko dwa pliki [rys.1]:

Formy dialogowe w środowisku Gnome

Visual Studio instalacja

Księgarnia PWN: Wojciech Sterna Delphi od podstaw

Microsoft Visual C++

Programowanie obiektowe

Scenariusz lekcji. Scenariusz lekcji 1 TEMAT LEKCJI: 2 CELE LEKCJI: 2.1 Wiadomości: 2.2 Umiejętności: 3 METODY NAUCZANIA: 4 ŚRODKI DYDAKTYCZNE:

Materiały do laboratorium MS ACCESS BASIC

Użycie Visual Basic for Applications ("VBA")

Przygotowanie własnej procedury... 3 Instrukcja msgbox wyświetlanie informacji w oknie... 6 Sposoby uruchamiania makra... 8

Programowanie obiektowe

Programowanie w C++ Wykład 1. Katarzyna Grzelak. 26 luty K.Grzelak (Wykład 1) Programowanie w C++ 1 / 28

Ćwiczenie 5 Menu programu

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 3. Programowanie komputerowe

Podstawy programowania skrót z wykładów:

BAZY DANYCH Panel sterujący

Praca w środowisku Visual Studio 2008, Visual C

Podstawy technologii WWW

Visual Basic for Applications. Wstęp

Tworzenie własnych komponentów

Metodyka programowania. Edytor tekstu. Specyfikacja

Programowanie modułowe

Programowanie obiektowe zastosowanie języka Java SE

Pamiętałeś o kopiowaniu i zapisywaniu swojego programu do kolejnych folderów? Jeżeli tak, to:

MsgBox(Komunikat [, Przyciski] [, Tytuł] [, PlikHelp, HelpContext])

Rozpocznijmy ten odcinek od rozwiązania problemu postawionego w poprzednim odcinku:

Codecave jest to nieużywana pamięć uruchomionej aplikacji, do której można wstrzyknąć dowolny kod a następnie wykonać go.

wstawianie przycisków umożliwiających wybieranie wartości poprzez klikanie strzałek

Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych

Ćwiczenie 6. Wiadomości ogólne.

Lazarus dla początkujących, część III

Język programowania PASCAL

W kodzie modułu Unit1 zdefiniuj dwie metody - składowe komponentu formatki TForm1:

Lazarus dla początkujących, część II

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

I. Spis treści I. Spis treści... 2 II. Kreator szablonów Tworzenie szablonu Menu... 4 a. Opis ikon Dodanie nowego elementu...

Delphi. Lazarus. Kompilatory Delphi. Linki do stron o Delphi

Jak napisaś edytor tekstowy w Delphi (wersja Delphi 2009)

PLUTO Sterownik bezpieczeństwa Skrócona Instrukcja obsługi oprogramowania. PlutoProgrammingManualPL_v7A.pdf 1

Aplikacje w środowisku VBA. Visual Basic for Aplications

Opis implementacji: Implementacja przedstawia Grę w życie jako przykład prostej symulacji opartej na automatach.

Makropolecenia w PowerPoint Spis treści

LibreOffice Calc VBA

Borland to firma, która stworzyła kilka środowisk programistycznych: Turbo Pascal Borland Pascal Objekt Pascal Borland Delphi C++ Builder C++

Wprowadzenie do biblioteki klas C++

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM

Formularze w programie Word

2. Kliknij Insert->Userform. Jeżeli Toolbox nie pojawi się automatycznie, kliknij View -> Toolbox. Otrzymany widok powinien być jak poniżej.

Wstęp do Programowania, laboratorium 02

Podstawy programowania. Ćwiczenie. Pojęcia bazowe. Języki programowania. Środowisko programowania Visual Studio

Smarty PHP. Leksykon kieszonkowy

Synchronizator plików (SSC) - dokumentacja

Dodawanie grafiki i obiektów

e-wsparcie Barbara Muszko Aktualizacja Twojej witryny internetowej tak prosta, jak obsługa Worda

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

UMOWY INSTRUKCJA STANOWISKOWA

Archiwum DG 2016 PL-SOFT

ZASOBY ZMIENNYCH W STEROWNIKACH SAIA-BURGESS

Ćwiczenie 2 Wczytywanie i zapisywanie do plików tekstowych

Spis treści. Rzut okiem na środowisko...m... 9 Projektant formularzy...m... 11

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows XP

Funkcje przeciążone, konstruktory kopiujące, argumenty domyślne

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Programowanie na poziomie sprzętu. Programowanie w Windows API

Programowanie w C++ Wykład 1. Katarzyna Grzelak. 25 luty K.Grzelak (Wykład 1) Programowanie w C++ 1 / 38

Obsługa grafiki w Delphi, rysowanie na płótnie, obsługa myszki, zapisywanie obrazków do plików, bitmapy pozaekranowe.

Instalacja i opis podstawowych funkcji programu Dev-C++

Rys. 1. Główne okno programu QT Creator. Na rysunku 2 oznaczone zostały cztery przyciski, odpowiadają kolejno następującym funkcjom:

Zadanie 11. Przygotowanie publikacji do wydrukowania

Rozdział 1. Przegląd bramofonu SAFE

Transkrypt:

Pliki wchodzące w skład projektu Rozmiar formatki, okna. Wyświetlanie okien komunikatów Rzutowanie Konwersja Tworzenie standardowych przycisków

Pliki wchodzące w skład projektu. Elementy projektu: plik projektu, plik modułu, plik formularza Najprostszy projekt, na przykład domyślny Project1 zawiera plik z kodem w Pascalu (moduł).pas i plik zawierający zapisany w postaci tekstowej obraz formularza (.DFM). Oba te pliki są niezbędne do utworzenia formularza. Plik projektu (.DPR) Jest również tworzony dla każdego projektu. Zawiera program główny, łączący w jedną całość wszystkie plik projektu. Domyślny plik projektu zawiera: Domyślną nazwę projektu (np. Project1). Deklarację modułów (także należących do projektu formularzy, które są modułami). Część główną programu uruchamiającą aplikację. Aby obejrzeć plik projektu.dpr: 1 Wybierz View Project Source Plik projektu jest tworzony automatycznie. W przypadku dodania nowego formularza plik projektu jest automatycznie aktualizowany. Dodaj nowy, pusty formularz do projektu i obejrzyj zmiany w pliku projektu. Zostanie dodany nowy moduł (Unit2), plik (UNIT2.PAS) oraz identyfikator formularza (Form2). Plik modułu (.PAS) Domyślny plik modułu zawiera: Domyślną nazwę modułu. Powinna być zmieniona na bardziej znaczącą np. główny moduł programu może się nazywać MainForm. Nazwę modułu można zmienić za pomocą polecenia File Save As lub przy pierwszym zachowywaniu projektu. Część interface zawierającą: Deklaracje modułów uses Deklaracja typu formularza (klasa formularz) Deklaracja zmiennej obiektowej (obiekt formularz) Po utworzeniu nowego formularza deklaracja potrzebnych modułów jest wykonywana automatycznie. Część implementation z kodem źródłowym formularza. n Aby obejrzeć plik modułu formularza.pas: 1 Wybierz zakładkę z nazwą odpowiedniego pliku w oknie edytora kodu (Code Editor). Jeśli w oknie Edytora kodu jej nie ma, wybierz View Units... Plik formularza (.DFM) Plik.DFM jest plikiem binarnym i na ekranie jest widoczna jego graficzna reprezentacja. Można jednak oglądać plik formularza w postaci tekstowej otwierając go w oknie edytora kodu (Code Editor). Moduły nie związane z formularzem Większość modułów jest związana z formularzem, ale można też tworzyć moduły niezależne. Przy tworzeniu niezależnego modułu Delphi generuje tylko następujący kod unit Unit2; interface implementation end. Sami musimy zadeklarować użycie potrzebnych modułów.

Plik tworzone w trybie projektu Rozszerzenie Definicja Opis pliku.dpr Plik projektu Kod pascalowy dla programu głównego projektu. Zawiera listę wszystkich formularzy i plików modułów projektu oraz zawiera kod inicjalizujący aplikację. Tworzony, gdy projekt jest po raz pierwszy zachowywany..pas Kod źródłowy modułu (Object Pascal) Dla każdego formularza jest tworzony dla każdego formularza (gdy zostanie zachowany). (W projekcie mogą być również moduły nie związane z żadnym formularzem). Zawiera wszystkie deklaracje i procedury, w tym procedury obsługi zdarzeń..dfm Plik graficzny formularza Binarny plik zawierający właściwości formularza. Dla każdego formularza jest tworzony oddzielny plik.dfm podczas pierwszego zachowywania projektu..opt.res.~dp Plik zawierający opcje projektu Plik tekstowy zawierający bieżące ustawienia opcji projektu. Tworzony, gdy są zachowywane po raz pierwszy zmiany dokonane w opcjach projektu. Plik zasobu kompilatora Binarny plik zawierający ikony aplikacji i inne zewnętrz zasoby (Compiler resource file) wykorzystywane przez projekt. Kopia zapasowa projektu. Tworzony podczas drugiego zachowywania projektu. Zawsze zawiera poprzednią wersję pliku projektu..~pa Kopia zapasowa pliku modułu Kopia zapasowa poprzedniej wersji pliku modułu. (Poprzednia wersja pliku)..~df Kopia zapasowa graficznego pliku Kopia zapasowa binarnego pliku z ustawieniami właściwości. Zawiera poprzednią wersję pliku. formularza..dsk Ustawienia desktopu Plik zawiera informację o ustawieniach desktopu ustalonych dla pliku w oknie dialogowym Environment options. Pliki tworzone podczas kompilacji Rozszerzenie Definicja Opis.EXE Skompilowany plik Plik wykonywalny aplikacji, zawiera również pliki.dcu. wykonywalny Wystarczy do rozpowszechniania aplikacji..dcu Skompilowany moduł Dla każdego pliku.pas jest tworzony taki plik..dll Skompilowana biblioteka dynamiczna

Rozmiar okna, formatki, położenie okna Metoda I poprzez object inspektor Klikamy na formatkę i ustawiamy parametry width, height, left, top. AutoScroll włącz/wyłącz scrolle. Align położenie okna po uruchomieniu programu. Metoda II poprzez metodę ręcznego zmniejszenia rozmiaru okna formatki

Wyświetlanie okien komunikatów // MessageBox w Delphi function MessageBox(hWnd: HWND; lptext, lpcaption: PChar; utype: UINT): Integer; stdcall; Funkcji MessageBox używamy, aby pokazać okno dialogowe zawierające wiadomość (treść komunikatu), tytuł oraz dowolną kombinację ikon i przycisków. Parametry: hwnd Identyfikuje właściciela okna komunikatu. W przypadku, gdy parametr jest równy 0 (NULL) okno nie posiada właściciela. Jeśli parametr posiada wartość Handle, to właścicielem komunikatu jest okno aplikacji (formularz). Na przykład, jeśli właścicielem okna dialogowego jest nasza aplikacja (formularz), to podczas wyświetlania komunikatu okno programu jest nieaktywne. Sterowanie do aplikacji zostanie zwrócone dopiero po potwierdzeniu komunikatu. lptext Parametr określający tekst wyświetlanego komunikatu. W przypadku długiej treści komunikatu, jest ona automatycznie zawijana (do następnej linii) w oknie dialogowym. lpcaption Parametr opcjonalny, określający tytuł okienka dialogowego. W przypadku, gdy parametr ma wartość 0 (NULL), tytuł okienka przyjmuje domyślny tekst Błąd. utype Parametr utype zawiera flagi, które określają wygląd i zachowanie się okna dialogowego. Parametr ten może być kombinacją flag z dowolnych grup flag. W przypadku, gdy parametr posiada wartość 0, zostanie wyświetlone okno dialogowe z przyciskiem OK. Inna opcja : ShowMessage('Błąd wejścia/wyjścia'); ShowMessage(const Msg: string); Metoda MessageBox() Metoda MessageBox wyświetla okno komunikatu, które zawiera tekst podany jako parametr oraz, opcjonalnie, różnorodne nagłówki i przyciski. Jest to wywołanie wbudowanej funkcji Windows API, z tym, że nie trzeba podawać uchwytu okna. Składnia funkcji jest następująca: function MessageBox(Text, Caption: PChar; Flags: Word): Integer; Znaczenie parametrów jest następujące: Parametr Text Caption Flags Znaczenie Tekst wyświetlany w oknie dialogowym Tytuł na pasku tytułu w oknie dialogowym. Typ przycisku (przycisków) w oknie dialogowym. Stałe, które możesz podać jako parametry można znaleźć w pomocy. Przykładowe to: Stała Flags MB_AbortRetryIgnore MB_OK MB_OkCancel Znaczenie Wyświetla zestaw przycisków: Przerwij, Ponów próbę, Zignoruj Wyświetlany jest tylko przycisk OK Wyświetla zestaw dwóch przycisków: OK i Anuluj

MB_YesNo MB_YesNoCancel MB_IconExclamation MB_IconInformation MB_IconQuestion MB_IconStop MB_DefButton1 MB_DefButton2 MB_DefButton3 MB_DefButton4 Wyświetla zestaw dwóch przycisków: Tak i Nie Wyświetla zestaw przycisków: Tak, Nie i Anuluj Wyświetlana jest ikona wykrzyknika Wyświetlana jest ikona z pochyloną literą i Wyświetlana jest ikona ze znakiem zapytania Wyświetlana jest ikona ze znakiem stopu Pierwszy przycisk jest przyciskiem domyślnym Drugi przycisk jest przyciskiem domyślnym. Trzeci przycisk jest przyciskiem domyślnym. Czwarty przycisk jest przyciskiem domyślnym. Flagi można łączyć za pomocą symbolu + np. MB_YesNo + MB_IconInformation + MB_DefButton1 Metodę wywołujemy np. dla aplikacji : Application.MessageBox('Czy chcesz kontytuować tę operację', 'Potwierdzenie', MB_YesNoCancel + MB_IconQuestion); Metoda zwraca kod, który symbolizuje wciśnięty przycisk: Kod zwracany IDAbort IDCancel IDIgnore IDNo IDOK IDRetry IDYes Jego znaczenie Został wciśnięty przycisk Przerwij Został wciśnięty przycisk Anuluj Został wciśnięty przycisk Zignoruj Został wciśnięty przycisk Nie Został wciśnięty przycisk OK Został wciśnięty przycisk Ponów próbę Został wciśnięty przycisk Tak Tak możesz wypróbować działanie funkcji MessageBox. procedure TForm1.Button1Click(Sender: TObject); Button: Integer; Button := Application.MessageBox('Witamy w świecie Delphi!', 'Message Box', mb_okcancel + mb_defbutton1); if Button = IDOK then Label1.Caption := 'Wybrałeś OK'; if Button = IDCANCEL then Label1.Caption := 'Wybrałeś Anuluj'; end;

Rzutowanie W poleceniu MessageBox trzeba podawać kilka parametrów. W przypadku drugiego i trzeciego parametru ma być to tekst, który zostanie wyświetlony w okienku. Ten tekst musi być typu PChar. Możesz więc napisać tak i będzie dobrze: Tekst, Tytul : PChar; Tekst := 'Delphi jest fajne!'; Tytul := 'Nie wiem?'; MessageBox(0, Tekst, Tytul, MB_OK); Tak, będzie dobrze. Dlaczego? Bo zmienne Tekst oraz Tytul są typu PChar. Teraz zamiast typu PChar napisz String: Tekst, Tytul : String; Tekst := 'Delphi jest fajne!'; Tytul := 'Nie wiem?'; MessageBox(0, Tekst, Tytul, MB_OK); Takie coś już nie przejdzie. Kompilator wyświetli błąd: [Error] Project1.dpr(21): Incompatible types: 'String' and 'PChar'. Kompilator próbuje Ci powiedzieć: "Co Ty wyprawiasz! Przecież typy PChar i typ String to dwie różne rzeczy!". Częściowo ma racje, ale to tylko głupia maszyna i da się ją oszukać. Do tego właśnie służy rzutowanie. Polega to na oszukaniu kompilatora. On "myśli", że jest to typ PChar, a ty stosujesz typ String: Tekst, Tytul : String; Tekst := 'Delphi jest fajne!'; Tytul := 'Nie wiem?'; MessageBox(0, PChar(Tekst), PChar(Tytul), MB_OK); Jest to rzutowanie typu String na typ PChar. Kompilacja się powiedzie i wszystko będzie dobrze. Fajnie, nie? Ale takie coś przejdzie tylko do czasu. Bo takie coś już nie wyjdzie: Licznik : Integer; Licznik := 1; MessageBox(0, PChar(Licznik), '', MB_OK); end. Fachowca by powiedział: "To oczywiste. Przecież typy Integer i PChar zapisane są w odrębnych komórkach pamięci i bleblelble". Ktoś jednak pomyślał i stworzył:

Konwersja Konwersja polega na wykorzystaniu gotowych poleceń do zmiany typów. Jeżeli np. typ Integer chcesz przedstawić w postaci tekstu ( String ) stosujesz polecenie IntToStr. Zaraz przetestujemy to w praktyce. Żeby użyć tego polecenia do listu modułów uses musisz dodać moduł SysUtils. Gotowe? A, wiesz co? Dodaj jeszcze moduł Dialogs. Powinno to wyglądać tak: uses Windows, SysUtils, { <-- ten moduł jest konieczny, aby zastosować konwersje } Dialogs; { <-- ten zawiera jedno polecenie - ShowMessage } Moduł Dialogs zawiera polecenie ShowMessage, którego będziemy używali. Jak łatwo się domyśleć polecenie to wyświetla w oknie tekst ( to taka odmiana polecenia MessageBox ). Wpisz taki tekst do programu ( komentarze możesz oczywiście pominąć ): Data : TDateTime; { nowy typ - przechowuje datę } Rozdzial : Integer; { znany już typ Integer } Imie : String; { również znany typ String } Data := Now; { przypisuje zmiennej aktualną datę } Rozdzial := 2; Imie := 'Komputer'; ShowMessage('Cześć, mam na imię ' + Imie + ', a Ty właśnie czytasz ' + IntToStr(Rozdzial) + ' rozdział książki o Delphi! Dzisiaj jest: ' + DateToStr(Data)); end. Hohhoho. To coś trudniejszego, ale jakże przydatne w programowaniu. Zacznijmy od początku. Polecenie ShowMessage ma tylko jeden parametr - jest nim tekst, który ma być wyświetlony w okienku. Tekst ten ma być typu String. Operator + służy do połączenia odpowiednich części ( zmiennych ). Po prostu gdy chcesz w dane miejsce wstawić wartość zmiennej to kończysz tekst stawiając apostrof, następnie znak + mówiący o podłączeniu zmiennej. Później wpisujesz zmienną, która ma być w to miejsce wstawiona. W powyższym wypadku jeżeli będziesz chciał wstawić zmienną, która nie jest typu String trzeba będzie zastosować konwersje. Program możesz uruchomić i sprawdzić jak działa. Oto inne polecenia konwertujące typy: IntToStr - konwertuje zmienna "Integer" na "String" StrToInt - "String" na "Integer" StrPas - "PChar" na "String" StrPCopy - "String" na "PChar" TimeToStr - zmienna "Time" na "String" DateToStr - zmienna "Date" na "String" StrToDate - "String" na "Date" StrToTime - "String" na "Time" CurrToStr - "Currency" ( zmiennoprzecinkowy ) na "String" StrToCurr - "String" na "Currency" FloatToStr - zmiennoprzecinkowy na "String"

Tworzenie standardowych przycisków Można szybko stworzyć standardowe przyciski poprzez dodanie komponentu BitBtn i ustawienie jego właściwości Kind. Zmiana tej właściwości powoduje jednoczesną zmianę właściwości ModalResult, z wyjątkiem rodzajów bkcustom, bkhelp i bkclose. Dla tych przypadków ModalResult przyjmuje wartość mrnone, a okno nie jest automatycznie zamykane po wybraniu takiego przycisku. Standardowe rodzaje przycisków zawierają nie tylko tekst, ale też i symbol graficzny. Predefiniowane typy przycisków BitBtn Wartość właściwości Kind BkAbort bkall bkcancel bkclose Efekt Cancel z tekstem Abort. OK z tekstem All. Close z tekstem Close. Zamyka okno. Ustawienia innych właściwości Caption := Abort ModalResult := mrabort Caption := &All ModalResult := 8 Caption := Cancel Cancel := True ModalResult := mrcancel Caption := &Close Komentarz Obok tekstu pojawia się czerwony X. Obok tekstu pojawia się zielony podwójny check mark. Obok tekstu pojawia się czerwony X. Obok tekstu pojawiają się drzwi wyjściowe. bkcustom Żaden Nie dotyczy Użyj tego ustawienia, aby stworzyć własny przycisk z wybranym obrazkiem (Glyph - bitmapa). bkhelp bkignore bkno bkok BkRetry BkYes z tekstem Help. służący do ignorowania zmian i kontynuowania akcji. Cancel z tekstem No OK z tekstem OK do ponawiania akcji. OK z tekstem Yes. Caption := &Help Caption := &Ignore ModalResult := mrignore Caption := &No Cancel := True ModalResult := mrno Caption := OK Default := True ModalResult := mrok Caption := &Retry ModalResult := mrretry Caption := &Yes Default := True ModalResult := mryes Obok tekstu pojawia się niebieski znak zapytania. Użyj procedury obsługi zdarzeń do wywołania pliku pomocy. (Jeśli okno dialogowe ma kontekst pomocy, Delphi zrobi to automatycznie). Użyj do kontynuowania akcji po wystąpieniu błędu. Obok tekstu pojawia się czerwone przekreślone koło. Obok tekstu pojawia się zielony check mark. Obok tekstu pojawiają się dwie cykliczne zielone strzałki. Obok tekstu pojawia się zielony check mark.