EDITTEXTとES_MULTILINEについて

[戻る]
うーん 2007/02/08(木) 03:06:04
リソースの中で
EDITTEXT 
0,0,0,100,100,ES_MULTILINE|WS_HSCROLL|ES_AUTOHSCROLL|WS_VSCROLL|ES_AUTOVSCROLL
としているのですが、上手く複数行がインプットできません。
Enterキーをおしても改行されないのです。

ためしに、ダイアログプロシージャの中で
case WM_INITDIALOG:
HWND hEditText;
hEditText = GetDlgItem(hDlg,0);//hDlgはダイアログのハンドル
SetWindowText(hEditText,"Text1\r\nText2");
break;
としてみたところ、ちゃんと複数行で
Text1
Text2
という風に表示されました。

これはどう云ったことなのでしょう?どなたかご教授下さい。

うーん 2007/02/08(木) 03:22:13
あ、どうやらもう一つコントロールを配置すると
Enterを押したときにそちらにフォーカスが飛んでるようです。
どうすれば防げるのかは分かりませんが、とりあえず追加報告です。宜しくお願いしま
す

wclrp ( 'o') 2007/02/08(木) 07:57:04
複数行にするとき面倒なことに改行をつけつけるES_WANTRETURNをつける必要がある。

うーん 2007/02/08(木) 12:34:08
[[解決]]
うわぁ。有り難うございます。上手くいきました。ES_WANTRETURNですか。
CreateWindowExでは、いらないのに、ダイアログだといるのですね。
また何か質問するときは宜しくお願いします。

古いスレッドには追加発言できません。