CBitmapButtonのインプリメントについて

[戻る]
たろう 2003/02/03(月) 02:44:36
View上にCBitmapButtonを表示させているのですが
プログラムを実行するとビットマップのみが表示され
ボタンが描画されません。
どのようにコーディングすればよいかご教授ください。

int CXXXView::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
  if (CView::OnCreate(lpCreateStruct) == -1)
    return -1;
    
  // TODO: この位置に固有の作成用コードを追加してください
  m_bitmapButton = new CBitmapButton();
  m_bitmapButton->Create("", WS_VISIBLE | WS_CHILD | BS_PUSHBUTTON |  
BS_OWNERDRAW, CRect(0, 0, 100, 100), this, 200);
  m_bitmapButton->LoadBitmaps(IDB_BITMAP1);
  m_bitmapButton->SizeToContent();
    
  return 0;
}

環境はWin98 VC++6.0SP5 MFCです。

kazuma 2003/02/03(月) 04:26:28
> プログラムを実行するとビットマップのみが表示され
> ボタンが描画されません。

CBitmapButtonはそういうものです。
ボタンの上にビットマップを表示したければ、
通常のCBitmapを使って、(ウィンドウスタイルにBS_BITMAPを設定しておく必要があります)
CButton::SetBitmapでビットマップを設定してやればいいです。

sugar 2003/02/03(月) 17:46:06
スタイルにBS_OWNERDRAWが指定されているからではないでしょうか。

古いスレッドには追加発言できません。