var x : Integer;
Meldung : String;
// Schleife über alle Komponenten des Formulars
for x := 0 to Form1.ComponentCount - 1 do
begin
// Falls es sich um ein TEdit handelt
if (Form1.Components[x] is TEdit) then
begin
// Ist der Text leer ?
if ((form1.Components[x] as TEdit).text = '') then
begin
// Meldung zusammenbauen, könnte anders/besser gemacht werden
Meldung := (form1.Components[x] as TEdit).Name +
' ist nicht gefüllt';
// Windows-Meldung anzeigen
Application.MessageBox(Text, PChar(Meldung),
MB_OK + MB_ICONINFORMATION);
// Fokus setzen
(form1.Components[x] as TEdit).SetFocus;
// und raus
exit;
end;
end;
end;
Hiermit überprüfst du alle Editfelder in deinem Formular (wenn es TPanles oder TScrollboxen etc. gibt muss man es mit denen und nicht mit dem Formular machen) ob etwas eingegeben wurde.
In der Meldung wird der Name der Komponente ausgegeben, was fpr den Benutzer nicht unbedingt schön ist, hier könnte man sich also was schöneres überlegen (über die Tag-Eigenschaft z.B. das dazugehörige Label (TEdit.Tag muss gleich TLabel.Tag sein) bzw. dessen Caption anzeigen oder so ...