Buttons o.ä. aktivieren / de-



  • Hallo - kurze schnelle Frage: 🙂

    Hab' in 'nem Dialog 'n Radio-Button und ander'n Kram. Wie kann ich irgendeinen Button o.ä. deaktivieren (ausgrauen) bzw. wieder aktivieren?!

    Was für 'ne Message muß ich schicken?
    SendDlgItemMessage(hWndDlg, IDC_RADIO, XXX, XXX, XXX);

    Hab' im Forum und in der MSDN geguckt. Nix gefunden.
    MSDN ist für sowas einfach ZU umfangreich...

    MfG, Sarge



  • WM_ENABLE oder nimm einfach EnableWindow :).

    cya 🙂



  • Einfach WM_ENABLE zum Fenster schicken geht nicht, da WM_ENABLE eine Notification Message ist, die während EnableWindow geschickt wird.
    Andere Möglichkeit wäre das DISABLED Flag direkt mittels SetWindowLong zu setzten, aber dafür gibts ja EnableWindow 😉



  • Danke, wieder was dazugelernt :D!

    cya 🙂



  • Das schnall ich nich'!

    Laut MSDN bezieht sich "SetWindowLong" ja auf das ganze Window (in meinem Fall der Dialog). Aber ich will ja nur EINEN Radio-Button o.ä. IN dem Dialog ausgrauen.

    Also muß ich doch sicher mit SendDlgItemMessage(hWndDlg, IDC_RADIO, XXX <- eine spezielle Message an den Button senden, oda net!??

    Danke trotzdem schonmal...



  • Jeder Button bzw. jedes Dialog-Element ist eigentlich auch nichts anderes als ein Fenster (Child-Fenster) 😉 Deshalb sollte das mit

    EnableWindow(GetDlgItem(hWndDlg, IDC_RADIO),FALSE);
    

    schon funktionieren 😉 Hast du das mal ausprobiert?!



  • Jeder Button bzw. jedes Dialog-Element ist eigentlich auch nichts anderes als ein Fenster (Child-Fenster) Deshalb sollte das mit
    EnableWindow(GetDlgItem(hWndDlg, IDC_RADIO),FALSE);
    schon funktionieren Hast du das mal ausprobiert?!

    DANKE! Genau das was ich brauche! Funzt wunderbar!

    Thx, Sarge


Anmelden zum Antworten