Получить фокус кнопки - MFC - PullRequest
0 голосов
/ 15 мая 2009

У меня есть диалоговое приложение VC ++ MFC, и в моей функции OnTimer я просто пытаюсь определить, какая кнопка в моем диалоге в данный момент имеет фокус.

Вот некоторый псевдокод того, что я пытаюсь выполнить ....

CDialog::OnTimer()
{
     CButton *btn = GetButtonOnFocus(); 
     int btnID = btn->GetDlgCtrlID();
}

1 Ответ

2 голосов
/ 15 мая 2009

Я не пробовал, но это должно работать:

CWnd * pFocus = GetFocus();
int btnID = 0;
if (pFocus != NULL && pDialog->IsChild(pFocus))
    btnID = pFocus->GetDlgCtrlID();

Это не ограничит результат только кнопками - для этого вам нужно использовать GetClassName и сравнить с «кнопкой».

...