Wie bestimme ich wann ein Zeichen in eine Editbox eingegeben wird?



  • Hi,
    ich habe folgendes Probelm. Ich will, dass wenn bei meiner Editbox ein Zeichen eingegeben wurde ein Boolean verändert wird. Leider habe ich meine Editbox mit hilfe der CreateWindowEx-Funktion erstellt und besitze daher keine eigene Nachrichtenverarbeitungsprozedur für die Editbox.
    Gibt es irgendeinen Weg trotzdem rauszubekommen, wann ein Zeichen eingeben wurde, um damit den Boolean zu verändern? 😕



  • Du kannst einfach im Messagehandler des Elternfensters die WM_COMMAND behandeln und dort auf die EN_CHANGE warten und dein Edit raussuchen. Siehe MSDN -> EN_CHANGE



  • Thx ich schau mal nach.



  • Für alle die das selbe oder ein ähnliches Problem haben. Die EN_CHANGE Nachricht steht dann im HIWORD vom wParam, nicht im LOWORD wie üblich, d.h. man fängt dich Nachricht so ab:

    ...
    case WM_COMMAND:
        switch(HIWORD(wParam))
        {
            case EN_CHANGE:
                if((HWND)lParam==hEdit)
                {
    ...
    

Anmelden zum Antworten