ToolbarWindow.cpp
#include "StdAfx.h"
#include "ToolbarWindow.h"
#include "Resource.h"
CToolbarWindow::CToolbarWindow(void)
{
}
CToolbarWindow::~CToolbarWindow(void)
{
//CToolbarButtonCtrlに移動
ImageList_Destroy(m_hImageList);
if ( IsWindow() )
DestroyWindow();
}
LRESULT CToolbarWindow::OnCreate ( UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/ )
{
//自作クラス、CToolbarButtonCtrlを使用したボタンとメニューの追加
//Init処理
m_BtnCtrl.Init ( m_hWnd );
//単純なクマーボタン
m_BtnCtrl.AddButton ( ID_KUMA_BUTTON, L"クマー", L"kuma" );
//ドロップダウン式クマクマボタン(画像なし)
m_BtnCtrl.AddButton ( ID_KUMAKUMA_BUTTON, L"クマクマ", 0, TBSTYLE_DROPDOWN );
//クマクマボタンにメニュー追加
m_BtnCtrl.AddMenu ( ID_KUMAKUMA_BUTTON, ID_KUMAKUMA_MENU1, L"クマメニュー1" );
m_BtnCtrl.AddMenu ( ID_KUMAKUMA_BUTTON, ID_KUMAKUMA_MENU2, L"クマメニュー2" );
return 0;
}
//メニュードロップダウン
LRESULT CToolbarWindow::OnDropDown( int /* idCtrl */, LPNMHDR pnmh, BOOL& /* bHandled */ )
{
LPNMTOOLBAR lpNMToolBar = (LPNMTOOLBAR)pnmh;
//メニューの表示
//OnCreate時に、AddMenuした内容をCToolbarButtonCtrlが保持していて
//パラメータとして渡された親ボタンのIDを元に、メニューを表示する感じ
m_BtnCtrl.DispMenu ( lpNMToolBar->iItem );
return 0;
}
//ボタン用動作設定
LRESULT CToolbarWindow::OnKumaButtonCommand ( WORD /* wNotifyCode */, WORD wID, HWND /* hWndCtl */, BOOL& /* bHandled */ )
{
if ( wID == ID_KUMA_BUTTON )
MessageBox ( L"クマボタン", L"message", MB_OK );
else if ( wID == ID_KUMAKUMA_BUTTON )
MessageBox ( L"クマクマボタン", L"message", MB_OK );
return 0;
}
//メニューアイテム用動作設定
LRESULT CToolbarWindow::OnKumaMenuCommand ( WORD /* wNotifyCode */, WORD wID, HWND /* hWndCtl */, BOOL& /* bHandled */ )
{
if ( wID == ID_KUMAKUMA_MENU1 )
MessageBox ( L"クマメニュー1", L"message", MB_OK );
else if ( wID == ID_KUMAKUMA_MENU2 )
MessageBox ( L"クマメニュー1", L"message", MB_OK );
return 0;
}
戻る
コメントスペース