CodeFatal
Erfahrenes Mitglied
Moin moin,
ich hab da mal wieder ne komplizierte Idee und bräuchte nen paar Tipps von euch
Ich habe ein Dialogfeld basierendes MFC Projekt.
Im Header einer Dialog-Klasse findet sich unteranderem folgendes:
In der CPP greife ich dann in den Funktionen DoDataExchange, OnCreate, etc über Schleifen auf ANZ_EDIT viele Elemente zu.
Zur Laufzeit kann ich die dann auch entspechend handhaben und nach gut dünken verändern.
Soweit so gut. Jetzt aber mal zu meinem Problem.
Da ich eine Variable Anzahl an Elementen habe, möchte ich jetzt eigentlich keine feste Anzahl an AFX-Funktionen haben. Ich hab mal irgendwann was von Funktions-Pointern aufgeschnappt und soweit ich aus verschiedenen Quellen herraus gelesen hab, ist das auch ein Weg zur Lösung. Wie bekomm ich aber herraus, welches Element geklickt oder geändert wurde und wie kann ich dann den Funktionsnamen zur Laufzeit zusammen basteln.
Im Endeffekt sollen alle Funktionen folgendes machen:
Der tuwas Funktion soll dann alles übergeben werden, was man brauch um das geklickte Element zu identifizieren.
Hoffe ihr habt das Problem in ansätzen verstanden.
Danke schon mal für eure Hilfe
Gruss Michael
ich hab da mal wieder ne komplizierte Idee und bräuchte nen paar Tipps von euch

Ich habe ein Dialogfeld basierendes MFC Projekt.
Im Header einer Dialog-Klasse findet sich unteranderem folgendes:
Code:
#define ANZ_EDIT 5
class Dlg:: public CDialog{
...
public:
CEdit m_Edit[ANZ_EDIT];
CAndereKlasse ElementausKlasse;
...
}´;
In der CPP greife ich dann in den Funktionen DoDataExchange, OnCreate, etc über Schleifen auf ANZ_EDIT viele Elemente zu.
Zur Laufzeit kann ich die dann auch entspechend handhaben und nach gut dünken verändern.
Soweit so gut. Jetzt aber mal zu meinem Problem.
Da ich eine Variable Anzahl an Elementen habe, möchte ich jetzt eigentlich keine feste Anzahl an AFX-Funktionen haben. Ich hab mal irgendwann was von Funktions-Pointern aufgeschnappt und soweit ich aus verschiedenen Quellen herraus gelesen hab, ist das auch ein Weg zur Lösung. Wie bekomm ich aber herraus, welches Element geklickt oder geändert wurde und wie kann ich dann den Funktionsnamen zur Laufzeit zusammen basteln.
Im Endeffekt sollen alle Funktionen folgendes machen:
Code:
void dlg::FunktionXXX(){
ElementausKlasse->tuwas(...);
}
Hoffe ihr habt das Problem in ansätzen verstanden.
Danke schon mal für eure Hilfe
Gruss Michael