2010-05-14 25 views
0

我在WINAPI中有三個關於編輯框控件的問題(我在msdn上找不到關於此的信息) 1.如何在編輯框中禁用鼠標,箭頭,退格鍵移動鍵入光標?我想在命令行中輸入命令行,但是退出。有關編輯框的三個問題?

  1. 我可以用紅色寫一些文字,而另一個用藍色寫?

  2. 如何從另一個線程寫入編輯框控件?

回答

0
  1. 讓它只讀(ES_READONLY)&手動攔截按鍵和追加只有你想那些。
  2. 不,您需要使用RICHEDIT類,並使用RTF。 (你可以所有者繪製一個正常的編輯窗口,但不會有太大的樂趣)
  3. SendMessageWM_SETTEXT(或者EM_SETTEXTEX/EM_REPLACESEL如果您使用RICHEDIT

爲什麼不使用控制檯?

+0

它必須在窗口中:/ 要回答1. - 是否有其他選項,而不是ES_READONLY並截取擊鍵?我用我的語言問beacouse在鍵盤上有很多組合來製作variuos字符。 – piotrek 2010-05-14 12:16:34

+0

您可以攔截WM_CHAR並檢查其值,並在適當時丟棄。 – 2010-05-14 12:31:29

+0

Thx。 我可以在RichEdit禁用鼠標選擇嗎? 我用此代碼附加char: \t \t \t SendMessage(richEdit,EM_SETSEL, - 1,0); \t \t \t的SendMessage(RICHEDIT,EM_SETCHARFORMAT,SCF_SELECTION,(LPARAM)&cf); \t \t \t的SendMessage(RICHEDIT,EM_REPLACESEL,(WPARAM)0,(LPARAM)(LPSTR)MSG); \t 但是當我點擊上的richedit鼠標此代碼不起作用:/ – piotrek 2010-05-14 14:11:01