Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Obekt-Erstellung funktioniert nicht (https://www.delphipraxis.net/149995-obekt-erstellung-funktioniert-nicht.html)

himitsu 5. Apr 2010 20:33

Re: Obekt-Erstellung funktioniert nicht
 
Zitat:

Wie kann ich es nun so einbauen. dass sobald Bank=0, der Button nicht mehr klickbar ist, also z.B. auch Visible:=false.
Meintest du das so?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
repeat
  bank:=bank-1;
  panel5.Caption:=IntToStr(bank);
  if bank=0 then
    ShowMessage('Sie haben verloren'+ #13 + 'Starten Sie ein neues Spiel!');
  Button1.visible := false;
until bank>=0 ;
das müßte dann allerdings so aussehn, damit das visible mit zum IF gehört
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
repeat
  bank:=bank-1;
  panel5.Caption:=IntToStr(bank);
  if bank=0 then
  begin
    ShowMessage('Sie haben verloren'+ #13 + 'Starten Sie ein neues Spiel!');
    Button1.visible := false;
  end;
until bank>=0 ;
PS: Die Repeat-Schleife wird erst verlassen, wenn bank>=0 .
Ist bank mal kleiner als 0 (bzw. zu Begin maximal 0), dann ergäbe das fast eine Endlosschleife.
(dank des Überlaufs bei etwa -2 Milliarden würde es aber zum Glück dann doch irgendwann abbrechen)

also ich würde das Repeat einfach weglassen :angel2:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Dec(bank) // entspricht einem bank:=bank-1;
  panel5.Caption:=IntToStr(bank);
  if bank=0 then
  begin
    ShowMessage('Sie haben verloren'+ CRLF + 'Starten Sie ein neues Spiel!');
    Button1.visible := false;
  end;
end;

// CRLF= #13#10, welches einem Zeilenumbruch in Delphi entspricht

zod1ac 5. Apr 2010 20:58

Re: Obekt-Erstellung funktioniert nicht
 
Ah ja, jetzt sehe ich meinen Fehler, da nach then ja mehrere Anweisungen kommen habe ich begin und end; vergessen...
Gut klappt wunderbar ;)

Ich hätte nur noch eine Frage, dann geh lass ich es auch gut sein für heute.

Ich habe mehrere Radiobuttons und wenn keiner gewählt ist, soll visible:=false sein.

Wie kann ich es denn eleganter hinschreiben anstelle von if radiobutton1.checked or radiobutton2.checked .... then button1.visible:=false.?
Habe was von einer Radiogroup gehört, aber weiß nicht so recht was damit anzufangen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:07 Uhr.
Seite 2 von 2     12   

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