![]() |
Dringendes Problem mit ImageList , Plz HELP
Hallo,
habe bereit schon mal wegen meinen Mahjongg-Projekt geschreiben und habe auch sofort Hilfe gefunden. Danke nochmal hierfür. Allerdings stehe ich nun vor dem nächsten Problem. Meine Imagelist mit 36 verschiedenen Bildern ordnet per Zufallsverfahren genau 4mal jedes Bild einen der 144 Buttons zu. So nun benötige ich allerdings auch eine Funktion die das Spiel neu starten lässt wenn man nicht weiter kommt. klick ich allerdings auf Neubeginn werden zwar alle buttons wieder visible und mit den Bildern ausgefüllt, jedoch mit den gleichen Bildern zuvor, sprich nicht gemischt. Desweiteren lassen sich auch nicht mehr Bilder gleichen Glyphs wegklicken. Ich vermute das, durch den Neubeginn zwar die Glyphen verteilt werden,allerdings nur die alten noch angezeigt werden! Bitte brauche dringend Hilfe. :wall: |
Re: Dringendes Problem mit ImageList , Plz HELP
Zeig doch mal den Quellcode zum Zuweisen der Bilder.
|
Re: Dringendes Problem mit ImageList , Plz HELP
so da der mom quelltext bei knapp 2000zeilen is , hab ich nur den momentanen text zum "neues spiel" hier:
Code:
so ich hoffe ihr könnt beim prob helfen , weeitere fragen beantworte ich gerne
procedure TForm1.NeuesSpiel1Click(Sender: TObject);
Var i,j,m,z:Byte; begin if messagedlg('Neues Spiel starten?',mtconfirmation,[mbYes,mbNo],0)= mrYes then begin for i:=1 to 144 do Steine[i].Visible:=true; if messagedlg('Spielregeln erklären?',mtinformation,[mbYes,mbNo],0)=mryes then showmessage('Das Ziel ist, durch Anklicken zweier identischer Steine alle Elemente abzubauen. Allerdings können Steine nicht markiert werden, die jeweils links und rechts einen weiteren Stein haben oder teilweise durch andere verdeckt werden.'); begin for i:=0 to 3 do for j:=1 to 36 do begin Bilder[j+i*36]:=j-1; end; Randomize; for i:=1 to 144 do begin z:=Random(144)+1; m:=Bilder[i]; Bilder[i]:=Bilder[z]; Bilder[z]:=m; end; for i:=1 to 144 do ImageList1.GetBitmap(Bilder[i],Steine[i].Glyph); end; end; end; |
Re: Dringendes Problem mit ImageList , Plz HELP
Randomize sollte einmalig aufgerufen werden (z.B. OnCreate)
|
Re: Dringendes Problem mit ImageList , Plz HELP
mhm, meinst du damit in den teil delphis rein , der sofort startet sobald man das projekt öffnet? createform?... sry versteh net allzuviel, aber ich hab das randomize jetz shon wie wild durch die Gegend geschoben und nach dem 2.Mal klicken auf Neues Spiel funzt immer gar nichts mehr... ohmann, ich brauch das unbedingt. Oder gibts vielleicht was,das das gesamte projekt einfach nochmal neu startet per klick? weil beim ersten mal drauf klciken funktioniert es ja...
|
Re: Dringendes Problem mit ImageList , Plz HELP
Weiß den Glyphs beim Neustart einfach mal nil zu.
Delphi-Quellcode:
for i := 1 to 144 do
Steine[i].Glyph := nil; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:09 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