Tatsächliche Eingabe in Edit box



  • Hallo, ich hab das folgende Problem:

    Zur Laufzeit wird ein Edit control durch SetDlgItemText von außen auf einen Wert gesetzt (dies passiert in unregelmäßigen Abständen).

    Nun möchte, ich nur bestimmte Abfragen auf dieses Control durchführen, wenn eine tatsächliche Eingabe durch den User statt findet.

    Dazu hab ich die Meldung ON_EN_CHANGE des Controls abgefangen.
    In der dazugehörigen Funktion möchte ich nun den Text des Controls auslesen, aber immer nur dann, wenn der User tatsächlich eine Taste drückt.
    Nun habe ich probiert, das Auslesen nur durchzuführen, wenn der Eingabefokus auf dem Control liegt:

    if (GetDlgItem(ID_CONTROL)->GetFocus() != NULL) bzw.
    if (GetDlgItem(ID_CONTROL)->GetCapture() != NULL)

    Das Problem ist, anscheinend wird durch SetDlgItemText immer der Fokus gesetzt, das heißt meine Abfrage erfolgt ständig.
    Wie kann ich es erreichen, dass die Abfrage nur bei einer tatsächlichen Zeicheneingabe durch den User erfolgt? 😕



  • Versuchs mal mit:

    if(GetDlgItem(ID_CONTROL)->GetFocus()==GetDlgItem(ID_CONTROL))
    


  • Ich dank dir devil81! 😉


Anmelden zum Antworten