AGB  ·  Datenschutz  ·  Impressum  







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

Listbox Zahlen erhöhen

Ein Thema von TarantelFaser47 · begonnen am 12. Mär 2018 · letzter Beitrag vom 14. Mär 2018
Antwort Antwort
Seite 2 von 3     12 3      
TarantelFaser47

Registriert seit: 30. Jan 2018
14 Beiträge
 
#11

AW: Listbox Zahlen erhöhen

  Alt 12. Mär 2018, 21:48
Also die Augenzahlen (6 und 5) sollen addiert werden, naja und dann soll in der Listbox bei: "Anzahl der 11: 1"
stehen (vorher stand da: "Anzahl der 11: 0")

und wenn nochmal ne 11 gewürfelt wird dann "Anzahl der 11: 2"
und wenn eine 7 gewürfelt wird dann "Anzahl der 7: 1"
und so weiter und so fort...
  Mit Zitat antworten Zitat
günni0
(Gast)

n/a Beiträge
 
#12

AW: Listbox Zahlen erhöhen

  Alt 12. Mär 2018, 21:49
Was du meinst könnte einem Histogram nahe kommen. Such das mal bei Google um das Prinzip zu verstehen.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#13

AW: Listbox Zahlen erhöhen

  Alt 12. Mär 2018, 21:55
Hallo,
wenn nicht nach dem 2. Würfeln die Ergebnisse des 1. Würfelns weg sein sollen,
darf summe nicht in der ButtonClick-Methode definiert werden,
sondern "global" im Formular.

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    private
    public
      summe: array[2..12] of Integer;
  end;
Dann darf in der ButtonClick das Array natürlich nicht auf 0 zurückgesetzt werden.

Da jetzt du dir jetzt die Summe merken kannst, kannst Du in der Tat die ListBox bei jedem
Klick löschen (Clear) und neu füllen.

PS:
Ausserdem sollte man 1..12 drausmachen, falls einer der Würfel mal von Tisch runterfällt
Heiko

Geändert von hoika (12. Mär 2018 um 22:03 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#14

AW: Listbox Zahlen erhöhen

  Alt 12. Mär 2018, 22:11
Dann darf in der ButtonClick das Array natürlich nicht auf 0 zurückgesetzt werden.
Genau deshalb hab ich es anfangs nicht verstanden und mehr und mehr nachgefragt

PS: Vieleicht wäre es einfacher 2 Reihen á 10 Labels fest zu platzieren?
Linke Labels bekommen Beschriftung wie "Würfelsumme 11", daneben ein Label mit einer Summe ala IntToStr(das Würfel-Array mit der 11)
ODER (auf's Array verzichten und so hier)
den Werte-Labels passende Namen geben, w11 zum Beispiel als Name für Würfelsumme 11,
beim Programm-Start den Werte-Labeln alle eine "0" geben,
und wenn nun ein Ergebniss 11 kommt, nurnoch w11.Caption := IntToStr(StrToInt(w11.Caption)+1);
Das für jede Würfelkombination sollte auch passend sein.
Gruß vom KodeZwerg

Geändert von KodeZwerg (12. Mär 2018 um 22:23 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#15

AW: Listbox Zahlen erhöhen

  Alt 12. Mär 2018, 23:00
Hallo,
na, lass Ihn erst mal machen.
Mit der ListBox ist das ja sonst nicht unverkehrt.

Man sollte halt ein paar Grundlagen der Programmierung verstehen,
dazu sind wir ja auch da ...
Heiko
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.491 Beiträge
 
Delphi 7 Professional
 
#16

AW: Listbox Zahlen erhöhen

  Alt 12. Mär 2018, 23:15
Naja, die Idee mit dem Array ist ja nicht verkehrt. Die Items einer Listbox sind ja eigentlich auch eins.

Wenn man nun ein Array für die Berechnung hat und das auch alles funktioniert, dann braucht man nur noch eine Routine, die den Arrayeintrag an die entsprechende Position der Listbox schreibt.

Das Array geht von 2 bis 12. Die Listboxitems beginnen jedoch bei 0.

Wenn man den richtigen Eintrag in der Listbox haben will, muss man nur die Position aus dem Array nehmen und dann 2 abziehen.

Der Eintrag in der Listbox könnte dann ungefähr so aktuallisiert werden:
Delphi-Quellcode:
// x ist die gewürfelte Zahl.
Array[x] := Array[x] + 1;
Listbox.Items[x - 2] := Format('%d: %d',[x,Array[x]]);
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#17

AW: Listbox Zahlen erhöhen

  Alt 12. Mär 2018, 23:25
Hallo,
KISS ist das nicht (Keap it simple, stupid).

ListBox löschen und neu eintragen, ist doch viel einfacher zum lernen.
Ausserdem geht das Array ja jetzt ab 1 los, falls mal ein Würfel von Tisch runterfällt
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#18

AW: Listbox Zahlen erhöhen

  Alt 12. Mär 2018, 23:33
Na dann würde ich mein Beispiel auf Columns anwenden mit gleichem Prinzip, erste Column erhält Beschreibung zweite Column erhält einen Wert per IntToStr(StrToInt(hier die Column für Text/Caption)+1), könnte das klappen?
Eine Tabellenkalkulation, bei gleichem Prinzip, könnte man zu lern zwecken dafür auch benutzen.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
TarantelFaser47

Registriert seit: 30. Jan 2018
14 Beiträge
 
#19

AW: Listbox Zahlen erhöhen

  Alt 13. Mär 2018, 10:24
Sorry das ich mich nur so schlecht ausdrücken könnte.
Heute min Informatik-Unterricht wurde uns die Lösung gezeigt:

Code:

For i := 1 to k do
begin
w1 := Random(6)+1;
w2 := Random(6)+1;
inc(summe[w1+w2]);

if (i mod 500 = 0) then application.Processmessage;

Listbox1.Clear;

For j := 2 to 12 do
 Listbox1.items.add(inttostr(Summe[j];

end;

So, oder so Änlich..
Am Handy das zu schreiben ist schrecklich;(
  Mit Zitat antworten Zitat
günni0
(Gast)

n/a Beiträge
 
#20

AW: Listbox Zahlen erhöhen

  Alt 13. Mär 2018, 11:08
inc(summe[w1+w2]); Da hast du doch dein Histogram.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      

 

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 16:18 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