Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Buttons im Array[0..10,0..10] of TBitBtn unterscheiden (https://www.delphipraxis.net/71457-buttons-im-array%5B0-10-0-10%5D-tbitbtn-unterscheiden.html)

droppi 15. Jun 2006 15:16


Buttons im Array[0..10,0..10] of TBitBtn unterscheiden
 
Hallo!

Ich hab schon die Forensuche benutzt hab aber kein passendes Thema gefunden. Mein Problem ist folgendes:
Ich erstelle während der Laufzeit ein zweidimensionales Array of TBitBtn und möchte nun herausfinden welcher Button gedrückt wurde(also den Index des arrays). Das soll ein Minesweeper Clone werden, also muss ich die Koordinaten im array herausfinden. Hab grad absolut keinen Plan wie ich das machen soll. Wäre dankbar für Hilfe.

MrKnogge 15. Jun 2006 15:23

Re: Buttons im Array[0..10,0..10] of TBitBtn unterscheiden
 
TBitBtn's haben eine Eigenschaft "Tag", du könntest also jedem Button einen anderen Tag zu weisen und sie so unterscheiden.

gruss

mkinzler 15. Jun 2006 15:24

Re: Buttons im Array[0..10,0..10] of TBitBtn unterscheiden
 
Du bekommst doch im Eventhandler eine Referenz des Buttons im Paramter Sender. Du kannst beim Erstellen des Buttons dessen Position im Komponentennamen oder im .Tag hinterlegen.

Evian 15. Jun 2006 15:28

Re: Buttons im Array[0..10,0..10] of TBitBtn unterscheiden
 
Wenn Du die BitBtns nach dem gleichen Prinziep benennst (also z.B. BitBtn1 bis BitBtn99) dann kannst Du die "ID" im OnClick-Event herrausbekommen. Einfach per (Sender as TBitBtn).name und dann die ID parsen. Aber wozu brauchst Du eigendlich das Array of array of TBitBtn? Wäre ein Array of Array of Boolean nicht cleverer, in dem Du dann immer vermerkst, welcher Button schon geklickt wurde...

droppi 15. Jun 2006 16:12

Re: Buttons im Array[0..10,0..10] of TBitBtn unterscheiden
 
Naja ich hab im Hintergrund ein array of array of Boolean in dem die minen verteilt werden. Dann überprüfe ich ob die Buttonkoordinaten gleich den Minenkoordinaten sind. Ich werd jetzt eure Vorschläge erstmal testen.

sakura 15. Jun 2006 16:18

Re: Buttons im Array[0..10,0..10] of TBitBtn unterscheiden
 
Und wenn Dir das alles nicht gefällt - und gute Ideen sind ja dabei - dann gehst Du halt das Array durch und vergleichst den Sender mit jedem Arrayeintrag. Bei einem Match hast Du den Schludigen.

...:cat:...


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:54 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