2016-07-24 20 views
1

私はこれを学んでいます。私はこれを長い間検索しましたが、何の答えも見つけられません。 シフトまたはCapsLockキーを用いた場合であってもWin32エディットコントロールの大文字小文字混合

私はエディットコントロールにテキストを入力するたびに、それは常に、小文字になりました。私はそれに任意の大文字/小文字のスタイルを入れていない:

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

は、混在ケース(下と大文字の許可)にする方法はありますか?または サブクラス化が必要ですか?

+2

EM_SETHAND?... –

+7

EM_SETHANDLE = 0xBC、ES_UPPERCASEとES_LOWERCASEの両方をオンにします。私たちは現在どちらが勝っているのかを知っています:) –

答えて

5

EM_SETHANDLEはウィンドウメッセージ定数であり、ウィンドウスタイルではありません。おそらく、それは動作を引き起こす数値を持っています。 1つは、あなたの偽のスタイルがES_LOWERCASEと解釈されていると想像してください。

ウィンドウスタイルからEM_SETHANDLEを削除します。

+0

ああ、私はそれを疑っていました。私は他の人からコードを受け取りましたが、それを削除することを恐れています。 これは今働いています、どうもありがとう、私はxDだったのです 1分で頭痛の6ヶ月分を解決しますxD – user5962153

+4

これらの不思議な小さなプレフィックス疣贅は、実際には何かを意味します。 'EM' =メッセージを編集します。 'ES' =スタイルを編集します。 WS =ウィンドウスタイル。 'WM' =ウィンドウメッセージ。すべての共通コントロールはこのテーマに従います。間違ったコードが間違っていると簡単に伝えます。あなたが確信が持てない場合は、ドキュメントを参照してください。あなたが何を意味するのか分からないので何かを取り除くことを恐れているのは、まあまあです。 *それは何を意味するのかを知る! –