PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [C++/MFC] Radiobutton-Click Event wird einfach ausgeführt!


WhiteVelvet
2006-07-08, 13:05:52
Ich habe eine Hauptklasse mit Dialog, auf dem Ein DynTabCtrl sitzt. In diesem sind 5 Tabs, jeweils eine Klasse. Setze ich in Klasse 2 einen Radiobutton mit Click-Event passiert nichts beim Start, normal. Setze ich ganz frisch in Klasse 5 ein RadioButton mit Click-Event, und darein ein AfxMessageBox, dann wird dieses 2x beim Programmstart ausgeführt. Dieses Event wird nirgends explizit aufgerufen, aber trotzdem wird es das trotzdem, aber wo und wieso? Ist die Klasse kaputt? Ich bin am verzweifeln...

BavariaBlade
2006-07-11, 11:23:42
WhiteVelvet[/POST]']Ich habe eine Hauptklasse mit Dialog, auf dem Ein DynTabCtrl sitzt. In diesem sind 5 Tabs, jeweils eine Klasse. Setze ich in Klasse 2 einen Radiobutton mit Click-Event passiert nichts beim Start, normal. Setze ich ganz frisch in Klasse 5 ein RadioButton mit Click-Event, und darein ein AfxMessageBox, dann wird dieses 2x beim Programmstart ausgeführt. Dieses Event wird nirgends explizit aufgerufen, aber trotzdem wird es das trotzdem, aber wo und wieso? Ist die Klasse kaputt? Ich bin am verzweifeln...

Bin leider auch kein MFC Profi, ich hatte aber ein ähnliches Problem schon mit
UpdateData(true) oder eben UpdateData(false). Das eine ist das einlesen von Dialogdaten, das andere das setzen von Dialogdaten. Könnte mir vorstellen, dass das auch die Radiobuttons abfrägt,setzt.

servus BB

Gast
2006-07-11, 16:44:57
so ein ähnliches problem hatte ich auch schonmal, da wurde ein event einfach zwei mal anstatt ein mal gefeuert. warum konnte mir nie jemand sagen, es gab aber einen workaround für dieses problem, dass auch in der msdn library indirekt beschrieben wurde.

ich hab zwar keine ahnung was du machst, aber ganz nüchtern würde ich mal einschätzen, das ding wird von irgendwem irgendwo aufgerufen. dürfte es nicht im event selbst möglich sein, festzustellen, von wem und von wo es aufgerufen wurde? oder geht das bei dem was du machst nicht?

Gast
2006-07-11, 16:51:43
Imo führt das Ändern des Wertes eines Radiobutton unter Windows zur Auslösung des Klickereignisses. Schau mal nach, ob du im Code nicht irgendwo den Wert für deinen Radiobutton veränderst.