2016-07-24 6 views
1

Ich lerne und neu zu diesem Thema. Ich habe das lange gesucht und finde keine Antwort.Win32 Edit Kontrolle gemischten Fall

Jedes Mal, wenn ich Text in einem Edit-Steuerelement eingeben, es stellte sich immer, auch in Kleinbuchstaben, wenn Shift- oder CapsLock verwenden. Ich habe setze all Groß-/Kleinschreibung Stil nicht drauf:

hEditSub = CreateWindow("EDIT", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER | EM_SETHANDLE, 10, 334, 270, 20, hwnd_MainSub, NULL, hInstance_Main, NULL); 

Gibt es eine Möglichkeit, es gemischten Fall zu machen (so dass Groß- und Klein)? Oder ist Unterklassen erforderlich?

+2

EM_SETHAND? ... –

+7

EM_SETHANDLE = 0xBC, schaltet sowohl ES_UPPERCASE als auch ES_LOWERCASE ein. Wir wissen jetzt, welcher gewinnt :) –

Antwort

5

EM_SETHANDLE ist eine Fensternachrichtenkonstante und kein Fensterstil. Vermutlich hat es einen numerischen Wert, der das Verhalten verursacht. Man stellt sich vor, dass Ihr gefälschter Stil als ES_LOWERCASE interpretiert wird.

Entfernen Sie EM_SETHANDLE von Ihrem Windows-Stil.

+0

oh Mist, ich habe das Ding verdächtigt, ich habe den Code von jemand anderem bekommen, aber Angst davor, es zu entfernen, weil ich denke, es ist Standard und Standart von seinem Code. es funktioniert jetzt, vielen Dank, wie dumm ich war xD Sie lösen 6 Monate im Wert von Kopfschmerzen in einer Minute xD – user5962153

+4

Diese seltsamen kleinen Präfix Warzen bedeuten eigentlich etwas, @user. 'EM' = Nachricht bearbeiten. 'ES' = Stil bearbeiten. 'WS' = Fensterstil. 'WM' = Fenstermeldung. Alle allgemeinen Steuerelemente folgen diesem Thema. Macht es leicht zu sagen, dass falscher Code falsch ist. Wenn Sie sich nie sicher sind, schauen Sie in der Dokumentation nach. Angst haben, etwas zu entfernen, weil du nicht weißt, was es bedeutet, ist irgendwie albern. * Finde heraus, was es bedeutet! –