AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Buttons im Array[0..10,0..10] of TBitBtn unterscheiden
Thema durchsuchen
Ansicht
Themen-Optionen

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

Ein Thema von droppi · begonnen am 15. Jun 2006 · letzter Beitrag vom 15. Jun 2006
Antwort Antwort
droppi
(Gast)

n/a Beiträge
 
#1

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

  Alt 15. Jun 2006, 15:16
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.
  Mit Zitat antworten Zitat
MrKnogge

Registriert seit: 9. Jun 2003
Ort: Pforzheim
2.458 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Buttons im Array[0..10,0..10] of TBitBtn unterscheiden

  Alt 15. Jun 2006, 15:23
TBitBtn's haben eine Eigenschaft "Tag", du könntest also jedem Button einen anderen Tag zu weisen und sie so unterscheiden.

gruss
Christian Bootz
Einstein ist tot, Newton ist tot,
und mir ist auch schon ganz schlecht...
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Buttons im Array[0..10,0..10] of TBitBtn unterscheiden

  Alt 15. Jun 2006, 15:24
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.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Evian
Evian

Registriert seit: 10. Apr 2003
Ort: Berlin
485 Beiträge
 
Delphi 6 Professional
 
#4

Re: Buttons im Array[0..10,0..10] of TBitBtn unterscheiden

  Alt 15. Jun 2006, 15:28
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...
-> www.Phillsoft.de

Ich bin nun Mathematiker, aber meine Freundin bleibt trotzdem unberechenbar!
  Mit Zitat antworten Zitat
droppi
(Gast)

n/a Beiträge
 
#5

Re: Buttons im Array[0..10,0..10] of TBitBtn unterscheiden

  Alt 15. Jun 2006, 16:12
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.
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Buttons im Array[0..10,0..10] of TBitBtn unterscheiden

  Alt 15. Jun 2006, 16:18
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.

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Antwort Antwort


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 08:04 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