Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » RadioButton Event abfangen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
20.09.2005, 04:59 Uhr
Ocrana



Hallo,

ich möchte bei einer RadioButton Gruppe, beim aktivieren eines bestimmten RadioButtons, etwas abprüfen. Wenn dieses "false" ergibt möchte ich das Event abbrechen so das der neue "Zustand" des RadioButtons nicht ausgeführt wird.

Kann mir hier jemand helfen?

Ocrana
--
-=ShrinkTo5 - The DVDShrink alternative=-
--=http://www.shrinkto5.com=--

Dieser Post wurde am 20.09.2005 um 05:00 Uhr von Ocrana editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
20.09.2005, 09:05 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


naja du musst darauf achten das alle Radio-IDs aufsteigend sind, z.b

IDC_RADIO1 1000
IDC_RADIO2 1001
...
IDC_RADIO8 1007

dann darfst du keine !!! Value-Membervariable benutzen, sondern musst folgendes manuell hinzufügen:

in die MessageMap:

C++:
ON_COMMAND_RANGE(IDC_RADIO1, IDC_RADIO8, OnBnClickedRadio)



in der Klassendefinition:

C++:
afx_msg void OnBnClickedRadio(UINT nID);



in der Implementation:

C++:
void CMyDialog::OnBnClickedRadio(UINT nID)
{
   if(event == true)
     CheckRadioButton(IDC_RADIO1, IDC_RADIO8, nID);
}



dann setzt er den neuen Radiobutton nur als aktiv, wenn event true ist. Wichtig ist jedoch: du solltest einmal checkradiobutton aufrufen um einen Grundwert zu initialisieren!
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
20.09.2005, 10:57 Uhr
Ocrana



ok, fast so wie ich das mache, aber wenn ich das Clickevent hinzufüge, dann gibt es bei mir kein (UINT nID). Ist das wirklich ein Parameter?
--
-=ShrinkTo5 - The DVDShrink alternative=-
--=http://www.shrinkto5.com=--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
20.09.2005, 13:10 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


wie gesagt, das musst du manuell hinzufügen, OnClicked allein reicht nicht, das obige ist eine Command-Range! d.h es wird für jedes Ctrl das innerhalb der ID-Range liegt die Funktion aufgerufen, und damit man weiß von welcher ist dieser Parameter da da
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
20.09.2005, 13:42 Uhr
Ocrana



Hmm, aber eigentlich ist ja OnClicked eigentlich schon zu spät. Ich dachte man müsste das Event in WinProc oder so abfangen. Denn ich will es ja wie schon beschrieben "abbrechen" wenn nötig. Aber danke für die Hilfe
--
-=ShrinkTo5 - The DVDShrink alternative=-
--=http://www.shrinkto5.com=--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: