OnKey.... geht nicht



  • Hallo,

    habe einen modalen Dialog und möchte dort Ctrl+C auswerten.
    Ich habe OnKeyDown, OnKeyUp, OnCommand usw durchprobiert und einen Breakpoint gesetzt, aber irgendwie fängt der die Nachrichten ab und läuft nicht in meine Nachrichtenbehandlung wenn ich eine Taste drücke.

    Wieso? Blockt das der Dialog oder kann/muss man das irgendwo enablen?

    Gruß



  • Hi electron_1,

    1.Probier mal für deine Dialgfeld eine Klasse an zu legen(falls du sie nicht schon hast)

    2.Füg der klasse einfach einen MessageHandler hinzu.

    Klassenname::PreTranslateMessage(MSG *pMsg)
    

    3.In dem MessageHandler bekommst du nun alle Nachrichten bevor sie an die Basisklasse CDialog gehen.

    Bei Fragen, einfach 0190332798 ;), nur ein witz, rühr dich einfach nochmal 😃

    Viel Spaß

    codeman



  • @codeman thx,

    damit hab ich jetzt noch ein anderes Problems gelöst. Der Dialog kriegt nämlich keinen Mouseclick mit, wenn man auf ein Steuerelement clickt (das Steuerelement schon, der Dialog aber nicht).
    Das verstehe ich noch. Wieso der Dialog aber keine WM_KEY... versteh ich nicht.

    Aber egal, deine Hilfe hat mir geholfen.

    PS: Never touch a running system!



  • Die MFC sorgt für die Zuordnung der Nachrichten, und wenn du auf einen Button klickst wird die Nachricht nun mal an den Button gesandt und nicht an das Dialogfeld.
    Wenn man es doch anders braucht, gibt es wie schon erwähnt, halt die PreTranslateMessage


Anmelden zum Antworten