掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
アクティブなコントロールのオブジェクトID を取得するには? (ID:66249)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
環境 XP SP2 Visual C++ 6.0 MFC [Enter]キーにてフォーカス移動を行う際、ボタンコントロール上かの判定を オブジェクトID (IDOK、IDCANCELなど) で行いたいのですが、取得方法が分か りません。 アクティブなコントロールのオブジェクトID を取得する方法を教えて下さい。 オブジェクトIDが取得できるとフォーカス移動以外にも使えるので(^^; BOOL CxxxxDlg::PreTranslateMessage(MSG* pMsg) { // アクティブなコントロールのスタイルを取得 CWnd* pCWnd = GetFocus(); UINT uStyle = ((CButton*)pCWnd)->GetButtonStyle(); if(pMsg->message==WM_KEYDOWN){ switch (pMsg->wParam){ case VK_RETURN: // 現在とりあえず、 // アクティブコントロールのスタイルにて判定 if( uStyle != BS_DEFPUSHBUTTON ){ // ボタンでなかったら NextDlgCtrl(); // 次へフォーカス移動 return FALSE; } break; case VK_DOWN: NextDlgCtrl(); // 次へフォーカス移動 return FALSE; case VK_UP: PrevDlgCtrl(); // 前へフォーカス移動 return FALSE; } } return CDialog::PreTranslateMessage(pMsg); }
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.