【一次】VS 2015/MFC動的作成ツールバー1(アイコンを使用してツールバーを作成)

1961 ワード

アイコンを使用してツールバーを作成するには、まずアイコンリストを作成し、次にツールバーで関連画像リストを関連付け、まずCreateメソッドを呼び出してツールバーウィンドウを作成し、次にSetButtonsメソッドを呼び出してツールバーボタンのインデックスを設定し、GetToolBarCtrlメソッドでSetImageListメソッド関連画像リストを呼び出します.SetSizeasメソッドを呼び出してツールバーボタンと表示アイコンのサイズを設定し、最後にRepositionBarsメソッドを呼び出してツールバーを表示します.
例:
1.ダイアログベースのアプリケーションを作成する.
2.8個のアイコンリソースを追加します.
3.ダイアログ・ボックスのヘッダー・ファイルで変数を宣言します.コードは次のとおりです.
	CToolBar m_ToolBar;                 //     
	CImageList m_ImageList;             //      

4.ダイアログボックスのOnInItDialog関数でツールバーを作成します.コードは次のとおりです.
        m_ImageList.Create(32, 32, ILC_COLOR24 | ILC_MASK, 1, 1);           //      
	m_ImageList.Add(AfxGetApp()->LoadIconW(IDI_ICON1));                 //          
	m_ImageList.Add(AfxGetApp()->LoadIconW(IDI_ICON2));
	m_ImageList.Add(AfxGetApp()->LoadIconW(IDI_ICON3));
	m_ImageList.Add(AfxGetApp()->LoadIconW(IDI_ICON4));
	m_ImageList.Add(AfxGetApp()->LoadIconW(IDI_ICON5));
	m_ImageList.Add(AfxGetApp()->LoadIconW(IDI_ICON6));
	m_ImageList.Add(AfxGetApp()->LoadIconW(IDI_ICON7));
	m_ImageList.Add(AfxGetApp()->LoadIconW(IDI_ICON8));
	UINT array[11];                                                     //    
	for (int i = 0; i < 11; i++)                                        //             
	{
		if (i == 3 || i == 7 || i == 9)                                 //      4、8、10   
			array[i] = ID_SEPARATOR;                                    // 4、8、10        
		else
			array[i] = i + 1001;                                        //       
	}
	m_ToolBar.Create(this);                                             //       
	m_ToolBar.SetButtons(array, 11);                                    //          
	m_ToolBar.GetToolBarCtrl().SetImageList(&m_ImageList);              //      
	m_ToolBar.SetSizes(CSize(40, 40), CSize(32, 32));                   //         
	RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0);    //