[C++ Borland Builder6] Problem mit Button Arrays

Ich habe ein problem.

Und zwar habe ich eine größere menge an buttons die ich über einen index ansteuern möchte.

Ich habe also ein array aus pointern auf TSpeedbutton deklariert und jedem pointer einen button zugewiesen.

Nun teh ich vor einem neuen problem wie finde ich nun den index des pointers heraus wenn ein event stattfindet is ein recht übles problem und sehr dringend
 
So ein ähnliches Problem hatte ich auch mal mit Python. Ich wollte mit dem Tkinter Modul Buttons erstellen, die dynamisch verändert werden konnten.
Ich habe eine klasse erstellt, in der ein Button erstellt wurde. In der Klasse wurde dann eine Methode erstellt, die aufgerufen wurde, wenn der Button gedrückt wurde. Du kannst auch noch eine Klassenvariable anlegen, in der die ID (oder Index) des Buttons beinhaltet.
Ich programmiere mit Cocoa (API, das Apple bereitstellt um ein GUI unter OS X zu erstellen). Dort gibt es die Möglichkeit, eine Matrix aus Buttons (oder was auch immer) zu erstellen. Schau mal nach, ob dir nicht eine ähnliche Möglichkeit zur Verfügung steht.
 
Mir ist eine recht unelegante lösung eingefallen weil ich einfach weiter kommen musste. Ich habe einfach 200 OnClick Events die immer eine methode aufrufen mir dem parameter des indexes den der jeweilige button hat. also das problem ist hiermit einfach umgangen aber nicht gelöst wenn jemand eine lösung hätte würde mich diese immer noch interessieren weil ich dann das problem wenn es nocheinmal auftritt dann so lösen könnte
 
Es wäre iirc leichter gegangen:

1.
Wenn ich nicht irre sehen die Borland-Event-Handler alle so aus:
Code:
void Form::OnEvent(TObject *Sender)
wobei Sender das Object ist, das das das Event auslöst.
Einfach nach TSpeedButton umcasten....

2.
Alle Visuellen Komponenten von Borland haben die eigenschaft "Tag"
Da kannst du nen beliebigen int (Array index eg) drin speichern.


so long,
Nazgul
 
Das mit dem Tag is einfach zu einfach als das man da drauf kommen kann ich hätte mir sowas von viel arbeit ersparen können wenn ich das mal vorher gewusst hätte. das mit dem umcasten hab ich nicht so ganz verstanden was is damit genau gemeint
 
Zurück
Oben