CToolBarのSetBitmap関数の使い方について   – プログラミング – Home

通知
すべてクリア

CToolBarのSetBitmap関数の使い方について  


遠藤
 遠藤
(@遠藤)
ゲスト
結合: 20年前
投稿: 2
Topic starter  

CToolBarのSetBitmap関数の使い方について質問があります。

ツールバーの各項目ごとにイメージを設定しているのですが、
エラーになってしまいます。
使い方がまちがっているのでしょうか?
教えてください。

CToolBar m_wndToolBar;
m_wndToolBar.SetBitmap(IDB_BITMAP1);// ビットマップイメージ
m_wndToolBar.SetButtonText(0, フォルダ);
m_wndToolBar.SetBitmap(IDB_BITMAP2);
m_wndToolBar.SetButtonText(1, 検索);
m_wndToolBar.SetBitmap(IDB_BITMAP3);
m_wndToolBar.SetButtonText(3, コピ-);


引用解決済
トピックタグ
ゆう
 ゆう
(@ゆう)
ゲスト
結合: 23年前
投稿: 114
 

全然間違ってます。全部説明するのは大変なので、
MSDNサンプルのmfcieが参考になると思います。


返信引用
遠藤
 遠藤
(@遠藤)
ゲスト
結合: 20年前
投稿: 2
Topic starter  

先ほどのソースにこの行を追加したのですが、
最初の項目Noのみ画像が表示されます。
このようなやり方では駄目なのでしょうか?

CBitmap* bmp1 = new CBitmap();
bmp1->LoadBitmap(IDB_BITMAP3);
HBITMAP hBmp = (HBITMAP)bmp1->m_hObject;
m_wndToolBar.SetBitmap(hBmp);
m_wndToolBar.Invalidate();

m_wndToolBar.SetButtonText(0, フォルダ);

CBitmap* bmp2 = new CBitmap();
bmp2->LoadBitmap(IDB_BITMAP2);
HBITMAP hBmp2 = (HBITMAP)bmp2->m_hObject;
m_wndToolBar.SetBitmap(hBmp2);
m_wndToolBar.Invalidate();

m_wndToolBar.SetButtonText(1, 検索);


返信引用
RAPT
 RAPT
(@RAPT)
ゲスト
結合: 22年前
投稿: 310
 

何はともあれ、開発環境を明示してください。

それから、一体何がしたいのでしょうか。
なんだか基本的なところが勘違いされているような気がします。
既に指摘されていることですが、もう一度きちんとMSDN・サンプルソースを
見て確認してください。

(VC++6, MFCだとして)
CToolBar::LoadBitmap()
CToolBar::SetBitmap()
にて複数のボタンの絵を1つのビットマップでまとめて指定します。(仕様)

そして、各ボタン個別に、上記で指定したビットマップの内、どの絵柄を
割り当てるかを、CToolBar::SetButtonInfo()にて設定します。

ツールバーボタン個別にビットマップを割り当てるには、CImageListを利用します。
CImageListでイメージリストを作成し、
CToolBar::GetToolBarCtrl()でCToolBarCtrlへの参照を取得し、
CToolBarCtrl::SetImageList() でイメージリストを設定します。

上記キーワード近辺についてMSDNをじっくりと読み調べてください。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました