Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi If / then / Else Problem mit mehreren Ak-/Funktionen? (https://www.delphipraxis.net/107000-if-then-else-problem-mit-mehreren-ak-funktionen.html)

xShadowBoZz 20. Jan 2008 16:22


If / then / Else Problem mit mehreren Ak-/Funktionen?
 
Hi erstmal,
ich hab hier im forum schon ein bisschen rumgesucht, nix gefunden und weis auch nicht genau was ich als suchbegriff eingeben soll.
ich habe folgendes problem:
(in diesem fall)
ich hab hier schon einmal gefragt wie man ein edit feld mithilfe einer chechbox zensieren kann, soweit so gut klappt das auch aba wenn ich mit einer checkbox mehrer edit felder zensieren will klappt das nicht.
ich habs einmal schon mit folgendem probiert, bin aba gescheitert.

Delphi-Quellcode:
procedure TForm2.CheckBox2Click(Sender: TObject);
begin
If Checkbox2.Checked then
  Form1.Edit3.PasswordChar := '*'
  Form1.Edit5.PasswordChar := '*'
    else
      Form1.Edit3.PasswordChar := #0;
      Form1.Edit5.PasswordChar := #0;
end;
dann kommt folgender Error:

[Error] Unit2.pas(186): Missing operator or semicolon

(unten drunter is dann noch ein error, weis aba grad net ob des dazu gehört oda ob des einer von vohind war, naja egal hier ist er)
unten drunter:

[Fatal Error] Project.dpr(8 ): Could not compile used unit 'Unit2.pas'

wobei der erste angezeigt wird(mit dem dreieck pfeil).
dann hab ich einfach mal probiert nach
Delphi-Quellcode:
  Form1.Edit5.PasswordChar := '*'
ein semicolon zu machen(; )
da blieb der fehler trotzdem und dann kam noch einer dazu, der, der sagt das man kein ; vor else haben darf.

[Error] Unit2.pas(186): Missing operator or semicolon
[Error] Unit2.pas(187): ';' not allowed before 'ELSE'
[Fatal Error] Project.dpr(8 ): Could not compile used unit 'Unit2.pas'

wenn ich jetzt noch ein ; nach
Delphi-Quellcode:
  Form1.Edit3.PasswordChar := '*'
mache geht der "Unit2.pas(186) Error" weg aba der "';' not allowed error" bleibt, und den krieg ich ja nur weg wenn ich die ';' weg mache, dann erscheint aba wieder der "Missing operator or semicolon error" und so geht des halt immer so weiter.

gibt es dafür eine lösung, also 2Aktionen zwischen 'If' und 'Else' zu "Erstellen" , wie auch nach else(wobei das wohl kein problem sein wird, schätz ich mal)?

mfg
andy

BenjaminH 20. Jan 2008 16:25

Re: If / then / Else Problem mit mehreren Ak-/Funktionen?
 
soll eine Fallunterscheidung mehrere Befehle auslösen, müssen diese mit begin und end zusammengefasst werden.
Bei dir sähe das so aus:
Delphi-Quellcode:
procedure TForm2.CheckBox2Click(Sender: TObject);
begin
  If Checkbox2.Checked then
  begin
    Form1.Edit3.PasswordChar := '*';
    Form1.Edit5.PasswordChar := '*';
  end
  else
  begin
    Form1.Edit3.PasswordChar := #0;
    Form1.Edit5.PasswordChar := #0;
  end;
end;

Matze 20. Jan 2008 16:25

Re: If / then / Else Problem mit mehreren Ak-/Funktionen?
 
Hallo,

so müsste das aussehen. ich denke, auf weitere Erklärungen kann ich verzichten und hoffe, es kommt der "Aha"-Effekt. ;)

Delphi-Quellcode:
If Checkbox2.Checked then
begin
  Form1.Edit3.PasswordChar := '*';
  Form1.Edit5.PasswordChar := '*';
end else
begin
  Form1.Edit3.PasswordChar := #0;
  Form1.Edit5.PasswordChar := #0;
end;
Grüße

Edit: och Mönsch, da war einer schneller.

STS301 20. Jan 2008 16:27

Re: If / then / Else Problem mit mehreren Ak-/Funktionen?
 
versuche es einmal mit
Delphi-Quellcode:
if checkbox2.checked = true then
  begin
   ...;
  end
  else begin
  ...;
end;
//edit: ich hasse die roten Kästchen!!

Matze 20. Jan 2008 16:36

Re: If / then / Else Problem mit mehreren Ak-/Funktionen?
 
Zitat:

Zitat von STS301
versuche es einmal mit
Delphi-Quellcode:
if checkbox2.checked = true then
// ...

Einen Vergleich auf true sollte man nie machen!
Wieso steht hier: Über den Umgang mit Boolean.

STS301 20. Jan 2008 16:39

Re: If / then / Else Problem mit mehreren Ak-/Funktionen?
 
:duck: :duck: :duck:

ok, danke
:duck: :duck:

xShadowBoZz 20. Jan 2008 16:45

Re: If / then / Else Problem mit mehreren Ak-/Funktionen?
 
also erstmal:
Aha :o
ok weis jetzt wies geht, einfach bei sowas mit begin und end arbeiten
thx and euch alle :thumb:
:dp:


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:51 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz