多行编辑控件>移动下一行 [英] MultilineEdit Control > to move next line
本文介绍了多行编辑控件>移动下一行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
请让我知道,当用户选择<<<<< ALT + ENTER>>>.>时,我需要实现以启用换行符(多行编辑控件)的构造.
在PreTranslateMessage()
...
...
Please let me know, the constructs I need to implement for enabling new line (Multiline Edit Control) when user selects <<ALT + ENTER>>.
in PreTranslateMessage()
...
...
if((pMsg->message == WM_KEYDOWN) &&
(pMsg->wParam == VK_RETURN))
{
//Enter key was hit -> do whatever you want
<<some function to execute>>
return TRUE;
}
我想上面的代码应该处理<<< ALT + ENTER>>代替<< Enter>> ,因此,我将(WM_KEYDOWN更改为WM_SYSKEYDOWN),但徒劳地,它无法正常工作.请告诉我<<< ALT + ENTER>>的等效代码处理程序键.
Rgrds,
I presume the above code should handle <<ALT +ENTER>> instead of <<Enter>> , Hence, I have changed the (WM_KEYDOWN to WM_SYSKEYDOWN)but, in vain, it isn''t working properly. Pls., let me know equivalent code handlers for <<ALT +ENTER>> keys.
Rgrds,
推荐答案
如果要使用多行文本框,则不需要覆盖PreTranslateMessage
.您要做的就是在对话框中放置经典的Edit Control
并将其多行和想要的收益属性设置为 true .
如果仍要使用PreTranslateMessage
知道用户何时按ALT + ENTER,请使用以下代码:
If you want a multiline textbox, you don''t need to overridePreTranslateMessage
. All you have to do is dropping a classicalEdit Control
in your dialog and set its Multiline and Want Return properties to true.
If you still want to usePreTranslateMessage
to know when the user presses ALT+ENTER, then use this code:
BOOL CYourDialog::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message == WM_SYSCHAR && pMsg->wParam == VK_RETURN)
{
//user pressed ALT+RETURN key
...
}
return CYourDialog::PreTranslateMessage(pMsg);
}
这篇关于多行编辑控件>移动下一行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文