我希望有人能帮助我解决我遇到的困境。本质上,我有一个 Checkbox 和一个 RichEditControl 并排。我希望能够知道用户何时单击了我的 RichEditControl,这样我就可以向我的复选框发送一条消息以将其标记为打开和关闭。
起初我试图用空文本覆盖我的复选框,以充当我的 RichEditControl 的“空白”背景,这样我就不必担心左右发送消息。无论我尝试什么,“空白”背景都会与 RichEditControl 文本重叠并使其完全空白。
我在这里搜索了一些帮助,我发现这正是我遇到的。我明白他在说什么,但不具备实施他们所说的话的知识。
现在我正在使用 EN_LINK 来尝试捕获一条消息,这样我就可以告诉我的复选框来标记自己。
BEGIN_MESSAGE_MAP(TempInit, CDialog)
ON_NOTIFY(EN_LINK, IDC_TempInitMsg, &TempInit::OnEnLinkTempinitmsg)
END_MESSAGE_MAP()
void TempInit::OnEnLinkTempinitmsg(NMHDR *pNMHDR, LRESULT *pResult)
{
ENLINK *pEnLink = reinterpret_cast<ENLINK *>(pNMHDR);
// TODO: Add your control notification handler code here
// TODO: Add your control notification handler code here
radioClicked = !radioClicked;
if (radioClicked == true)
{
GetParent()->SendMessage(WM_MYRADIOCLICKED, CHECKENABLED, 0);
}
else
{
GetParent()->SendMessage(WM_MYRADIOCLICKED, CHECKDISABLED, 0);
}
}
*pResult = 0;
}
如果这完全是错误的方法,我很抱歉。我已经在谷歌上搜索了几个小时,却空手而归。如果有人有任何其他方法,请尽可能帮助我。如果我上面的内容还不够,我可以发布更多代码。