Delphi-PRAXiS
Seite 4 von 5   « Erste     234 5      

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 Das große Lotto-Spiel - Bet and Win (https://www.delphipraxis.net/81703-das-grosse-lotto-spiel-bet-win.html)

Jay15688 2. Dez 2006 17:13

Re: Das große Lotto-Spiel - Bet and Win
 
Liste der Anhänge anzeigen (Anzahl: 1)
Gibt es eine Möglichkeit ein Edit-Feld so zu gestalten, dass die eingegebenen Tipps im Editfeld so angeordnet sind wie dadrüber in der ListBox?
Im Anhang befindet sich ein Bild wie es aussehen sollte! Dass nach jedem Tipp der Cursor soweit springt, dass das nächste auch wieder untereinander angeordnet wird!

Freue mich auch hier über jede Hilfe!


Am allerbesten wäre es natürlich mit einem Beispielcode oder einem, den ich direkt verwenden kann, wie es NamenLozer eben freundlicherweise gemacht hat! :)


Danke


MfG Jay

Namenloser 2. Dez 2006 18:10

Re: Das große Lotto-Spiel - Bet and Win
 
Wie wäre es, ein TPanel zu nehmen, dessen borderstyle auf bssingle zu setzen, und bevelouter auf bvnone zu setzen? Color könntest du auf clwindow setzen. darauf kommen dann 6 gleichmäßig angeordnete edits mit dem borderstyle bsnone. Maxlength auf 2.

Das dürfte deiner Darstellung recht nahe kommen.

Jay15688 2. Dez 2006 19:50

Re: Das große Lotto-Spiel - Bet and Win
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

Vielen Dank für diese gute Idee! Es stimmt genau mit meinen Vorstellungen überein und ich habe es bereits in die Tat umgesetzt! Im Anhang könnt ihr den aktuellen Status meines Programms sehen!
Dennoch stellen sich drei mehr oder weniger große weitere Probleme:

1. Die Ziehungen sind irgendwie immer dieselben. Wenn ich jetzt 5 Ziehungen hintereinander mache und dann diese aus der Listbox lösche um neue Ziehungen durchzuführen, sind es wieder genau dieselben. Da geht natürlich relativ schnell der Spielwitz verloren!

2. Hätte ich gerne bei allen 4 Spielern jeweils zwei Checkboxen mit den Funktionen Enable und Disable um einzustellen, wie viel Spieler mitspielen!

3. Der wohl entscheidende Punkt: Über einen "Auswerten"-Button muss es möglich sein, die 6 Edit Felder mit je einer Zahl eines Spielers mit einer Ziehung in der Listbox zu vergleichen, um die "Richtigen" zu ermitteln!


Freue mich über jede Art von Ideen und Hilfen! Drittens ist natürlich am wichtigesten!


Bin gespannt auf eure tollen Beiträge...ohne das Forum würde ich es sowieso niemals schaffen :)


MfG Jay

Namenloser 2. Dez 2006 20:08

Re: Das große Lotto-Spiel - Bet and Win
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Jay15688
Hallo,
1. Die Ziehungen sind irgendwie immer dieselben. Wenn ich jetzt 5 Ziehungen hintereinander mache und dann diese aus der Listbox lösche um neue Ziehungen durchzuführen, sind es wieder genau dieselben. Da geht natürlich relativ schnell der Spielwitz verloren!

das liegt daran, dass du den Inhalt der Listbox zwar löscht, aber nicht den Inhalt der "richtigen" Liste im Hintergrund. Den mechanismus musst du selbst proggen. (Die Methode heißt Clear und ist schon deklariert, aber noch auskommentiert, weil sie ja noch nicht implementiert wurde)

Abgesehen davon habe ich gerade bemerkt, dass im onCreate des Formulars noch ein "randomize;" fehlt.

"OpenDialog1.Filter := '.tip';" solltest du weglassen, weil der Filter so nicht funktioniert. Wenn, dann so: "Lotto-Tip (*.tip)|*.tip"

beim savedialog ebenso.

edit: beispiel angehängt

Jay15688 2. Dez 2006 22:52

Re: Das große Lotto-Spiel - Bet and Win
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,


Vielen Dank! Das Spiel ist soweit lauffähig! :cheers:

Eine Sache gefällt mir trotzdem noch nicht so ganz!

Und zwar würde ich gerne eine Speicher/Ladefunktion per iniFile einbauen, um in einer Datei die Ziehungen, die Tipps der Spieler und die Treffer bzw Punkte der Spieler zu speichern!
Allerdings habe ich noch gar keine Ahnung, wie das mit der iniFile klappen könnte!

Meine momentane Speicher/Lade Funktion hat auch einen schweren Bug! Sobald man etwas gespeichertes laden will, kommt eine Fehlermeldung, ausser wenn man zb. drei Ziehungen durchführt, diese drei abspeichert, dann die Listbox leert und vier neue Ziehungen erstellt! Erst dann kan man die davor gespeicherte Datei mit den drei Ziehungen laden und sie wird dann auch erfolgreich geladen!

Sollte das mit der iniFile machbar sein, wäre mir es natürlich viel lieber und dann wäre das zweite Problem natürlich überflüssig!


Vielen Dank schoneinmal - So wie es aussieht, wird das Projekt erfolgreich fertig werden :)


PS: Im Anhang ist die aktuellste Version des Programms, um Fehler bei Laden/Speichern zu sehen!


MfG Jay

Namenloser 3. Dez 2006 12:50

Re: Das große Lotto-Spiel - Bet and Win
 
ich würde mir eine eigene schreibweise für die lottozahlen ausdenken.

Z.b. könnte man die einzelnen ziffern durch ein komma voneinander trennen und die ziehungen jeweils mit einer Raute.

etwa so:

Code:
[ziehungen]
zahlen = 12,14,21,32,42,48#1,34,35,36,40,41#3,4,5,6,7,8# etc...

[spieler]
spieler1 = Philip#1,25,33,34,41,43
spieler2 = Markus#12,14,22,33,43,49#
spieler3 = ...
natürlich wäre es auch möglich, beispielsweise so zu speichern:
Code:
[ziehungen]
zahlen1 = 12,14,21,32,42,48
zahlen2 = 1,34,35,36,40,41
zahlen3 = 3,4,5,6,7,8
das könnte man z.b. realisieren, indem man alle values der section "[ziehungen]" durchscannt.

Jay15688 3. Dez 2006 16:05

Re: Das große Lotto-Spiel - Bet and Win
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

ich bin mit meinem fast fertigen Spiel soweit sehr zufrieden! Lediglich die Speicher/Ladefunktion ist noch nicht 100% lauffähig! Ich muss das Spiel heute abend irgendwann bei uns im Info-Forum hochladen, sodass ich ein wenig unter Zeitdruck stehe! Würde mich freuen, wenn mir jemand so helfen könnte, dass ich das schnell hinbekomme! Ich würde mich auch freuen, wenn einer rausfinden würde, wieso die Speicherfunktion bei mir nicht funktioniert!!

Ich habe jetzt viele Stunden dieses Wochenende an diesem Projekt verbracht und auch viele von euch aufgehalten, sodass ich mich freuen würde, wenn sich das letzte Problem auch noch klären würde und das ganze einen runden Abschluss geben würde :)


Danke


MfG Jay

Namenloser 3. Dez 2006 17:50

Re: Das große Lotto-Spiel - Bet and Win
 
Hmm, so ganz verstehe ich die av auch nicht, aber eigentlich hatte ich mir gedacht, dass du in tziehungen.loadfromfile und tziehungen.savetofile die entsprechenden funktionen reinschreibst. sonst macht es eigentlich wenig sinn, das zeug in einer klasse zu kapseln...
ich hatte mir auch gedacht, dass du eine klasse tplayers und einen record tplayer einführen würdest.

@speichern/laden: das kann nicht gehen, weil in der listbox selber gar nichts drinsteht! stattdessen wird die listbox nur zur anzeige benutzt, die eigentlichen daten stehen in "ziehungen", daher ist in der klasse tziehungen ja auch schon loadfromfile und savetofile deklariert (wenn auch auskommentiert). Wie ich bereits gesagt habe, bei dem format kannst du ja kreativ sein.

Delphi-Quellcode:
procedure TZiehungen.LoadFromfile(filename: string);
var ini: tinifile;
    stringlist: tstringlist;
    lottozahlen: tlottozahlen;
    i,j,offset: integer;
    s: string;
begin
  { Inidatei laden }
  ini := tinifile.Create(filename);
  stringlist := tstringlist.Create;
  { alte tipps löschen }
  clear;
  { alle Keys aus der section "tipps" in stringlist einlesen }
  ini.ReadSection('tipps',stringlist);
  for i := 0 to stringlist.count-1 do
  begin
    j := 0;
    offset := 1;
    for j := 1 to 6 do
    begin
      { value-abschnitt zwischen zwei kommas extrahieren }
      s := copy(stringlist[i],offset,posex(',',stringlist[i],offset)-offset);
      { neuen offset setzen (nach position des nächsten kommas) }
      offset := posex(',',stringlist[i],offset)+1;

      { extrahierten wert als integer in lottozahlen einfügen }
      lottozahlen[j] := strtoint(s);
    end;
    { Aus value geladene lottozahlen zur liste hinzufügen }
    add(lottozahlen);
  end;
  stringlist.free;
  ini.free;
end;
Ungetestet! Speicher-Methode kannst du ja selbst schreiben (wenns funktioniert :wink: )
(Die speicher-methode entspricht hier meiner zweiten variante aus meinem letzten post. (es werden aber nur zahlen gespeichert, keine spieler!))

waldforest 3. Dez 2006 17:59

Re: Das große Lotto-Spiel - Bet and Win
 
Hallo,
auch wenn man eigentlich wissen müsste, dass Lotto 6 aus 49 heißt sollte die Eingabe des Tipps auch nur Zahlen bis 49 zulassen.

Jay15688 3. Dez 2006 18:32

Re: Das große Lotto-Spiel - Bet and Win
 
Hallo,

@NamenLozer:

Vielen Dank für den Laden-Code! Ich weiß, dass es langsam etwas dreist ist, was ich hier alles frage und verlange, aber könntest du mir dasselbe vllt. auch schnell für Speichern machen? Würde mich auch selber ranwagen, nur muss ich das gesamte Projekt innerhalb der nächsten paar Stunden fertig und hochgeladen haben, sodass ich das auf die schnelle alleine nicht mehr schaffe! Wäre echt super nett!!

Danke


MfG Jay


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 Uhr.
Seite 4 von 5   « Erste     234 5      

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