ショートカット実装ソースコード

//-------------------------------------------------------------------------------//
//	3.アクセラレータ用メンバ変数を追加する。
//-------------------------------------------------------------------------------//
class CXXXXDlg : public CDialog
{
	…
	…
 
protected:
	HACCEL m_hAccel;
 
	…
	…
}
 
//-------------------------------------------------------------------------------//
//	4.アクセラレータテーブルをロードする。
//-------------------------------------------------------------------------------//
BOOL CXXXXDlg::OnInitDialog()
{
	…
	…
 
	m_hAccel = ::LoadAccelerators(AfxGetInstanceHandle(),
		MAKEINTRESOURCE(IDR_ACCEL_DLG));
 
	…
	…
}
 
//-------------------------------------------------------------------------------//
//	5.PreTranslateMessage()をオーバーライドし、アクセラレータキーを処理する。
//-------------------------------------------------------------------------------//
BOOL CXXXXDlg::PreTranslateMessage(MSG* pMsg)
{
	…
	…
 
	if (m_hAccel != NULL) {
		if (::TranslateAccelerator(this->m_hWnd, m_hAccel, pMsg)) {
		    return TRUE;
		}
	}
 
	…
	…
 
	return CDialog::PreTranslateMessage(pMsg);
}
 
最終更新:2009年05月26日 20:44
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。