1. 程式人生 > >MFC獲取當前焦點的控制元件

MFC獲取當前焦點的控制元件

前言:

實際開發中,很多情況下我們需要獲取當前焦點的控制元件ID以便於進行特殊的操作。

方法1:

GetDlgItem(IDC_EDIT) == Getfocus()

//判斷焦點是否在某個控制元件上

方法2:(同1)

CWnd * pWnd = GetFocus();

int nId = pWnd->GetDlgCtrlID(); 

//獲取焦點控制元件的ID

特殊說明:

對於comb控制元件來說,它是由edit和list組合而成,需要先獲取其父視窗指標,所以單純使用上邊的方法是獲取不到的,具體如下

CWnd * pWnd = GetFocus()->GetParent();

int nId = pWnd->GetDlgCtrlID(); 

//獲取焦點控制元件的ID