MFC(VS2008)でダイアログベースのプロジェクトを作成し、OnKeyDown
イベントをダイアログに追加するだけです。 プロジェクトを実行してキーボードのキーを押すと、何も起こりません。しかし、ダイアログからすべてのコントロールを削除し、プロジェクトを再実行すると機能します。 ダイアログにコントロールがある場合でもキーイベントを取得するにはどうすればよいですか?ダイアログがそれのコントロールを持っている場合は、ダイアログ自体がフォーカスを取得したことがないなぜOnKeyDownは、ダイアログベースのMFCプロジェクトでキーイベントをキャッチしませんか?
void CgDlg::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: Add your message handler code here and/or call default
AfxMessageBox(L"Key down!");
CDialog::OnKeyDown(nChar, nRepCnt, nFlags);
}
ダイアログに 'CMFCPropertyGridCtrl'を追加し、その' OnKeyDown'メソッドが呼び出されていません。 – manatttta