我有一個CFormView派生類,我想調用焦點丟失時的方法。OnKillFocus不被稱爲
嘗試這樣:
MyClass.cpp
ON_CONTROL_REFLECT(EN_KILLFOCUS, OnKillFocus)
void CMyClass::OnKillFocus()
{
}
MyClass.h
afx_msg void OnKillFocus();
但我的方法是不會被調用,有一些方法可以達到我想要什麼?
我有一個CFormView派生類,我想調用焦點丟失時的方法。OnKillFocus不被稱爲
嘗試這樣:
MyClass.cpp
ON_CONTROL_REFLECT(EN_KILLFOCUS, OnKillFocus)
void CMyClass::OnKillFocus()
{
}
MyClass.h
afx_msg void OnKillFocus();
但我的方法是不會被調用,有一些方法可以達到我想要什麼?
相關消息和功能是
ON_WM_KILLFOCUS()
和
afx_msg void OnKillFocus(CWnd* pNewWnd);
EN_KILLFOCUS
等EN_XXX
通知特定於編輯控件。例如:
BEGIN_MESSAGE_MAP(CMyDialog, CDialog)
ON_EN_KILLFOCUS(IDC_EDIT1, OnMyFunction)
END_MESSAGE_MAP()
void OnMyFunction();
在消息映射中添加'ON_WM_KILLFOCUS()'時,我得到了無效的類型轉換 – Mangs
請確保刪除早先聲明的另一個'OnKillFocus();'。 –
如果這是你想要實現的東西:WM_KILLFOCUS是在錯誤的時間做現場確認(https://blogs.msdn.microsoft.com/oldnewthing/20040419-00/p = 39753)。 – IInspectable