AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

nochmal n-maliges Würfeln

Ein Thema von General Wolf1 · begonnen am 4. Feb 2007 · letzter Beitrag vom 4. Feb 2007
 
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.055 Beiträge
 
Delphi 12 Athens
 
#8

Re: nochmal n-maliges Würfeln

  Alt 4. Feb 2007, 09:37
Die Labels müssen auch vor jedem Würfeln am Anfang gelöscht werden, da sonst der Wert vom letzten Würfeln stehen bleibt, wenn eine Augenzahl nicht gewürfelt wird (weil die Labels ja nur in case aktualisiert werden).

Es wäre aber sinnvoller das mit einem Array und FindComponent zu machen anstatt die Labels direkt anzusprechen...
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  WurfListe: array[1..6] of Integer;
  WurfAnzahl, i, AktuellerWert: Integer;
begin
  WurfAnzahl := StrToInt(Edit1.Text);
    // Anzahl der gewünschten Würfe
  for i := 1 to 6 do
  begin
    WurfListe[i] := 0;
      // Anzahl zunächst jeweils 0 bei jeder Augenzahl
    TLabel(FindComponent('Label' + IntToStr(15 + i))).Caption := '0';
      // Die Labels auf 0 als Startwert setzen.
      // Wenn sonst nämlich eine Augenzahl gar nicht vorkommt bleibt der Wert
      // vom vorherigen Würfeln drin... ;-)
  end;

  Randomize;

  for i := 1 to WurfAnzahl do
  begin
    AktuellerWert := Random(6) + 1;
      // Zufallswert holen
    Inc(WurfListe[AktuellerWert]);
      // Im Array bei der entsprechenden Augenzahl 1 hinzufügen
    TLabel(FindComponent('Label' + IntToStr(15 + AktuellerWert))).Caption :=
      IntToStr(WurfListe[AktuellerWert]);
      // Und den Label (16 bis 21) aktualisieren
  end;
end;
Sebastian Jänicke
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:00 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