Die beiden folgenden Ereignisbehandlungsroutinen öffnen und schließen ein Formular namens SplashScreen, bevor das Hauptformular der Anwendung geöffnet wird. Die Konstante Startup ist im interface-Abschnitt von Form1 deklariert. Die Behandlungsroutine für das Ereignis OnActivate von Form1 ruft die Methode Show der Komponente SplashScreen auf.
procedure TForm1.FormActivate(Sender: TObject);
begin
if Startup then
begin
Startup := False;
SplashScreen.Show;
end;
end;
SplashScreen enthält eine Timer-Komponente, deren Eigenschaft Interval auf 3000 gesetzt ist. Das Formular wird somit drei Sekunden lang angezeigt und anschließend wieder geschlossen. Die Methode Close des Formulars ist dem Ereignis OnTimer der Timer-Komponente zugeordnet.
procedure TForm2.Timer1Timer(Sender: TObject);
begin
Close;
end;
Die folgende Ereignisbehandlungsroutine reagiert auf Timer-Ereignisse, indem das aktive Steuerelement um einen Pixel nach rechts verschoben wird.
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timer1.Interval := 100;
if ActiveControl <> nil then
ActiveControl.Left := ActiveControl.Left + 1;
end;
Zu diesem Beispiel gehören eine Gruppe von Optionsfeldern und eine Bildlaufleiste. Wenn der Benutzer auf eines der Optionsfelder klickt, ändert sich die Ausrichtung der Bildlaufleiste entsprechend.
procedure TForm1.FormCreate(Sender: TObject);
begin
RadioGroup1.Items.Add('Vertikal');
RadioGroup1.Items.Add('Horizontal');
RadioGroup1.ItemIndex := 2;
end;
procedure TForm1.RadioGroup1Click(Sender: TObject);
begin
if RadioGroup1.Items[RadioGroup1.ItemIndex] = 'Vertikal' then
ScrollBar1.Kind := sbVertical;
if RadioGroup1.Items[RadioGroup1.ItemIndex] = 'Horizontal' then
ScrollBar1.Kind := sbHorizontal;
end;
m folgenden Beispiel werden eine Schaltfläche und ein Memofeld verwendet. Wenn der Benutzer auf die Schaltfläche klickt, wird der Inhalt der Datei AUTOEXEC.BAT in das Memofeld geladen. Die sechste Zeile der Datei wird am oberen Rand des Formulars ausgegeben.
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.LoadFromFile('C:\AUTOEXEC.BAT');
Writeln('Die sechste Zeile von AUTOEXEC.BAT lautet: ', Memo1.Lines[5]);
end;
Wert Numerischer Wert Bedeutung
IDABORT 3 Es wurde die Schaltfläche Abbruch gewählt.
IDCANCEL 2 Es wurde die Schaltfläche Abbrechen gewählt.
IDIGNORE 5 Es wurde die Schaltfläche Ignorieren gewählt.
IDNO 7 Es wurde die Schaltfläche Nein gewählt.
IDOK 1 Es wurde die Schaltfläche OK gewählt.
IDRETRY 4 Es wurde die Schaltfläche Wiederholen gewählt.
IDYES 6 Es wurde die Schaltfläche Ja gewählt.
Sie können jede beliebige Delphi-String-Liste einfach als
Textdatei speichern und wieder laden (oder in eine andere Liste
laden). String-Listen-Objekte verfügen über Methoden, die beide
Operationen behandeln können. Indem Sie diese Methoden
verwenden, können Sie schnell durch Laden einer Datei in eine
Memo-Komponente einen einfachen Text-Editor erzeugen (wie unter
Einfügen von Dokumenten in untergeordneten Formularen gezeigt
wird). Sie können mit dem gleichen Verfahren jedoch auch Listen
von Einträgen für Listenfelder oder vollständige Gliederungen
speichern.
Um eine String-Liste aus einer Datei zu laden:
Rufen Sie die Methode LoadFromFile auf, und übergeben Sie den
Namen der Textdatei, aus der geladen werden soll.
LoadFromFile liest jede Zeile aus der Textdatei in einen String
in der Liste aus.
Um einen String in einer Textdatei zu speichern:
Rufen Sie die Methode SaveToFile auf, und übergeben Sie den Namen der Textdatei, in der der String gespeichert werden soll. Gibt es diese Datei noch nicht, wird sie von SaveToFile angelegt. Andernfalls wird der aktuelle Inhalt der Datei mit den Strings aus der String-Liste überschrieben.
Beispiel
Dieses Beispiel lädt eine Kopie der Datei WIN.INI aus dem Windows-Verzeichnis auf Laufwerk C: in ein Memo-Feld und erstellt eine Sicherungskopie namens WIN.BAK:
procedure TForm1.FormCreate(Sender: TObject);
var
FileName: string; { Platzhalter für den Dateinamen }
begin
FileName := 'C:\WINDOWS\WIN.INI'; { Dateinamen setzen }
with Memo1.Lines do
begin
LoadFromFile(FileName); { aus Datei laden }
SaveToFile(ChangeFileExt(FileName, 'BAK')); { in Sicherungsdatei speichern }
end;
end;