![]() |
Undefinierter Bezeichener, aber warum ?
Ich habe ein Problem. Ich will eine Namensabfrage, wenn ich dies aber so mache, kommt eine Fehler:
procedure TfrmLogin.LoginOKClick(Sender: TObject); begin If LoginName.Text = '' then MessageDlg('Bitte geben Sie einen Namen ein', mtInformation, [mbOK], 0) end; begin If not LoginName.Text = '' then NameVar := LoginName.Text; frmLogin.Close; end; ---------------------------------------------------------------------------------------------- [Fehler] Unit2.pas(46): Undefinierter Bezeichner: 'LoginName' ---------------------------------------------------------------------------------------------- Aber warum kommt der Fehler und wie gehört es richtig ? |
Re: Undefinierter Bezeichener, aber warum ?
Hi Äfan!
Erstens mal den Code mit delphi formatiert und mit einrückungen:
Delphi-Quellcode:
Eigentlich müsste er so aussehn:
procedure TfrmLogin.LoginOKClick(Sender: TObject);
begin If LoginName.Text = '' then MessageDlg('Bitte geben Sie einen Namen ein', mtInformation, [mbOK], 0) end; begin If not LoginName.Text = '' then NameVar := LoginName.Text; frmLogin.Close; end;
Delphi-Quellcode:
Ich bin mir bei deinem else-Zweig aber nicht sicher, evtl. musst du das frmLogin.Close aus dem begin-end-Block rausnehmen.
procedure TfrmLogin.LoginOKClick(Sender: TObject);
begin If LoginName.Text = '' then MessageDlg('Bitte geben Sie einen Namen ein', mtInformation, [mbOK], 0) else begin NameVar := LoginName.Text; frmLogin.Close; end; end; Greetz alcaeus |
Re: Undefinierter Bezeichener, aber warum ?
So gings. Wie kann man mehrere IF Abfragen in einem Block ausführen ?
PS: Das mit dem Delphi-Code habe ich nicht gemacht, da man den Text dann nicht mehr rot machen kann :wink: |
Re: Undefinierter Bezeichener, aber warum ?
Hi Äfan!
Zitat:
![]() Greetz alcaeus |
Re: Undefinierter Bezeichener, aber warum ?
Ich meine z.B. so:
Wenn Var. Name = '' dann zeige Meldung 'Hallo' Wenn Var. Alter = '16' dann zeige Meldung 'OK' usw. und das alles in einem Block. |
Re: Undefinierter Bezeichener, aber warum ?
hi!
erstmal willkommen! dann hinweis auf die [*delphi] tags (ohne stern) dann so machen wie es alcaeus gemacht hat dann nach "not" immer eine klammer öffnen, weil es da ganz gemeine fehler geben kann (binäre operation statt logischer...) mehrere if-abfragen: mit else (wie alcaeus es gemacht hat) oder "case .. of" |
Re: Undefinierter Bezeichener, aber warum ?
Mit AND vielleicht... :roll:
MfG Florian :hi: |
Re: Undefinierter Bezeichener, aber warum ?
Hi Äfan!
Die einzige Lösung die ich zur Zeit parat habe ist der with-do-Block:
Delphi-Quellcode:
Das with-do erspart dir, immer wieder Variable.Name bzw. Variable.Alter schreiben zu müssen. Ich hoffe das war das was du gemeint hast, andernfalls weiß ich wirklich nicht von was du sprichst.. :stupid:
with Variable do
begin if Name = '' then ShowMessage('Hallo!'); if Alter = 16 then ShowMessage('Ok!'); end; Greetz alcaeus |
Re: Undefinierter Bezeichener, aber warum ?
Zitat:
![]() |
Re: Undefinierter Bezeichener, aber warum ?
OK jetzt ceck ichs :thumb:
Man Delphi is schon so ne Sache für sich :stupid: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz