OnMouseMove Problem



  • hallo,

    ich habe in meinem Programm eine OnMouseMove Funktion. Wenn ich jetzt in einem Texteingabe Feld (für Zahlenwerte) nichts eingebe (also auch keine 0) und die maus bewege, wird die Fehlermeldung "Geben Sie Bitte eine Zahl ein" angezeigt.
    Diese Fehlermeldung war aber nirgendwo zu finden, muss also von C++ automatisch generiert werden. Hat jmd eine Idee wie ich das Problem lösen kann?

    Wie es scheint hat es irgendwas mit dem "dc" Zeiger zu tun ... mehr weiss ich leider nicht

    danke schonmal

    mfg, TFTS

    PS: das eigentliche Problem ist wahrscheinlich nicht ganz deutlich geworden. Diese Fehlermeldung kommt dann immer und immer wieder ohne dass man auch nur eine chance hat eine Zahl im Textfeld einzugeben



  • Ich vermute mal, du hast in der OnMouseMove Funktion Befehle, die irgendetwas mit dem Textfeld machen (den Wert einlesen oder so (UpdateData(true) vielleicht?))
    Und bei den Eigenschaften des Textfeldes ist das bestimmt auf Zahl umgestellt... dann kommt nähmlich diese Fehlermeldung, wenn man nix eingibt und z.B. den Fokus wechselt...

    Lösung:
    entweder die Eigenschaft "Zahl" wegmachen -> String stattdessen und selber checken obs ne Zahl ist
    oder: die OnMouseMove Funktion nochmal näher überarbeiten...
    (kannst die ja mal posten...)

    Greez



  • jo war ein UpdateData(TRUE) drin ... wird aber anscheinend nicht benötigt ... also hab ich es rausgenommen .. jetzt funzt es

    wär nicht drauf gekommen dass es daran liegen könnte

    danke

    mfg, TFTS



  • Naja UpdateData(TRUE) liest alle Werte ein und wenn du als Wert Zahl eingestellt hast, dann wird auch der Wert eingelesen und überprüft ob es echt eine Zahl ist.

    Ich mach in dem Fall auch immer die CString-Lösung:
    CString aufs Eingabefeld und dann:

    int iZahl = atoi(m_sZahl);
    

Anmelden zum Antworten