我创建了一个 MFC 文档视图应用程序并添加了几个继承CEdit自CView. 我想在每个CEdit工作之间进行切换。我环顾四周,大多数解决方案都涉及添加IsDialogMessage()到消息循环或PreTranslateMessage. 我已经在这样的类PreTranslateMessage方法中尝试过这个:CEdit
BOOL WordControl::PreTranslateMessage(MSG* pMsg)
{
if(IsDialogMessage(pMsg))
return TRUE;
else
return __super::PreTranslateMessage(pMsg);
}
但是,现在 CEdit 没有收到任何键盘消息,也没有制表符。我创建了CEdit这样的:
Create(WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER | ES_CENTER , Rect, Parent, Index);
我究竟做错了什么?
编辑:
该应用程序使用基本的 MFC 单文档模板。我正在动态添加几个继承自的对象CEdit和几个继承自CStatic. 我已经设法创建了所有的CEditsandCStatics但我希望能够从 to 制表CEdit符CEdit。
一张图片胜过千言万语; 这是一个屏幕截图:

我希望能够在第一个中键入“你好” CEdit,点击选项卡并让下一个CEdit获得焦点。然后我将输入“world”,然后点击选项卡,下一个CEdit将重点让我输入“this”等。
编辑:
新窗户:
