Hallo!
Ich mach momentan ein Praktikum und habe zur Aufgabe, ein in Delphi II mit ObjektPascal geschriebenes Programm anzupassen und zu aktualisieren.
Unter anderem soll ich eine Abfrage schreiben, die überprüft, ob in einem Eingabeformular alle Felder gefüllt sind. Das krieg ich ja noch hin. Aber ich schaffe es nicht, dass bei Feststellung eines leeren Feldes (was nicht sein darf), wieder zum Eingabeformular zurückgesprungen wird, nachdem der Hinweis "Geben Sie... ein" gekommen ist.
Ich hab einfach keine Ahnung, wie das gehen soll. Ich bin nicht so tief drin in Delphi...
Ich häng mal den Codeabschnitt an. Hoffentlich könnt ihr mir helfen.
Momentan kommt das Hinweisfenster, dass eines der Felder nicht ausgefüllt ist und wenn man auf OK klickt, startet trotzdem normal das eigentliche Programm. Das sollte nicht sein, sondern das Eingabefenster sollte wieder erscheinen oder alternativ das Programm komplett schließen.
Und nun der Code:
Delphi-Quellcode:
procedure TFormIdentPunktEingabe.BitBtnOKClick(Sender: TObject);
begin
TimerSec.Enabled:=false;
Label2.Visible:=false;
LabelSekunden.Visible:=false;
Label4.Visible:=false;
try
if (EditIdentPunkt.Text = '
')
then
begin
MessageDlg('
Bitte Ident Punkt eingeben!', mtWarning, [mbOk], 0);
EditIdentPunkt.SetFocus;
end
else if (EditEIP.Text = '
')
then
begin
MessageDlg('
Bitte eigene IP-Adresse eingeben!', mtWarning, [mbOk], 0);
EditEIP.SetFocus;
end
else if (EditFIP.Text = '
')
then
begin
MessageDlg('
Bitte fremde IP-Adresse eingeben!', mtWarning, [mbOk], 0);
EditFIP.SetFocus;
end
else if (EditSubnet.Text = '
')
then
begin
MessageDlg('
Bitte Subnetmask-Nummer eingeben!', mtWarning, [mbOk], 0);
EditSubnet.SetFocus;
end
else if (EditGateway.Text = '
')
then
begin
MessageDlg('
Bitte Gateway Nummer eingeben!', mtWarning, [mbOk], 0);
EditGateway.SetFocus;
end
else
IdentPunkt:=EditIdentPunkt.Text;
IP_CRS:=EditEIP.Text;
IP_SPS:=EditFIP.Text;
Subnet_CRS:=EditSubnet.Text;
Gateway_CRS:=EditGateway.Text;
NurTNR:=Label11.Caption;
Close;
except
MessageDlg('
Bitte Programm neu starten und alle Felder ausfüllen!', mtWarning,[mbOk], 0);
end
end;