Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Boolean ändert nicht seinen Wert (?) (https://www.delphipraxis.net/74204-boolean-aendert-nicht-seinen-wert.html)

xZise 30. Jul 2006 14:14


Boolean ändert nicht seinen Wert (?)
 
Delphi-Quellcode:
  FadeOutOnClose := not FadeOutOnClose; // = FOOC
 if FadeOutOnClose then
   xiFadeOutOnClose.Caption := 'Deactivate fade out on close'
 else
   xiFadeOutOnClose.Caption := 'Activate fade out on close';
FOOC ist ein Boolean und der andere ist ein Button.

Wenn ich nun auf dem Button klicke (der Code ist in der Buttonprozedur) muss ich zweimal klicken um den Status zu ändern.... Ich habe kA warum :(

sniper_w 30. Jul 2006 14:16

Re: Boolean ändert nicht seinen Wert (?)
 
Ich tippe auf das falsche Anfangswert.

Matze 30. Jul 2006 14:17

Re: Boolean ändert nicht seinen Wert (?)
 
Ich weiß auch nicht genau, was da schief läuft, aber kann es sein, dass du

Delphi-Quellcode:
FadeOutOnClose := not FadeOutOnClose;
erst nach der if-Abfrage aufrufen solltest? Nur so könnte ich mir das nun erklären.

mkinzler 30. Jul 2006 14:17

Re: Boolean ändert nicht seinen Wert (?)
 
Wi ost FadeOutOnClose deklariert?

xZise 30. Jul 2006 14:20

Re: Boolean ändert nicht seinen Wert (?)
 
Nein, dass kann es nicht sein, weils immer passiert... Also selbst wenns geändert ist, dann muss ich wieder 2x klciken.
Zitat:

Zitat von Matze
Ich weiß auch nicht genau, was da schief läuft, aber kann es sein, dass du

Delphi-Quellcode:
FadeOutOnClose := not FadeOutOnClose;
erst nach der if-Abfrage aufrufen solltest? Nur so könnte ich mir das nun erklären.

Ne... Beachte, dass ich als Caption (in deutsch): "Aktiviere FOOC" bzw "Deaktivier FOOC" und nicht "FOOC ist aktiv" bzw. "FOOC ist deaktiv"

Zitat:

Zitat von mkinzler
Wi ost FadeOutOnClose deklariert?

in der Type der Form (privat) (wenn das reicht, ansonsten geb ich COde :D)

Klaus01 30. Jul 2006 14:22

Re: Boolean ändert nicht seinen Wert (?)
 
Delphi-Quellcode:
if FadeOutOnClose then
  begin
    xiFadeOutOnClose.Caption := 'Deactivate fade out on close'
    FadeOutOnClose:=false;
  end;
else
  begin
    xiFadeOutOnClose.Caption := 'Activate fade out on close';
    FadeOutOnClose:=true;
  end:
So finde ich es etwas logischer und übersichtlicher.

Grüße
Klaus

Stefan Hueg 30. Jul 2006 14:23

Re: Boolean ändert nicht seinen Wert (?)
 
Kann ich mir auch nicht erklären, funktioniert doch? Poste mal etwas mehr Code.

Nils_13 30. Jul 2006 14:23

Re: Boolean ändert nicht seinen Wert (?)
 
@Klaus01: Übersichtlicher und Logischer ? Von mir aus. Aber der Code hat die gleiche Bedeutung, wie der andere Code.

mkinzler 30. Jul 2006 14:24

Re: Boolean ändert nicht seinen Wert (?)
 
Zitat:

Zitat von mkinzler
Wi ost FadeOutOnClose deklariert?

hätte natürlich Wo ist ... heißen müssen.
Wird der Wert erst beim 2. Mal geändert oder erst beim 2. Mal die Buttonbeschriftung geändert.

Christian Seehase 30. Jul 2006 14:25

Re: Boolean ändert nicht seinen Wert (?)
 
Moin Fabian,

Dein Code funktioniert bei mir problemlos.
Der Fehler muss an einer anderen Stelle liegen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:35 Uhr.
Seite 1 von 3  1 23      

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