• 締切済み

アイコンをピクチャーボックスに表示したい・・

かなり難しいとは思っていますが アイコンをBMP形式でリソースに取り込んであります。 ピクチャーボックスに表示させるには、どうすればいいでしょうか・・・ できればプログラムソースファイルもおねがいします・・

みんなの回答

  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.1

★質問者さんへ ・2007/01/18 18:20 に質問番号『qa2676083』で回答しましたよ。→『http://oshiete1.goo.ne.jp/qa2676083.html』 ・分からないのならば補足説明などをつけて下さい。 ・『ピクチャーボックス』、『ピクチャー・コントロール』とは『Static』コントロールの  『SS_BITMAP』スタイルを指定したのですよね。→あっていますか? ・それで、ダイアログのコントロールですか? ・それとも『CreateWindow』関数で作成したコントロールですか? ・不明ですが、ダイアログのコントロールならば下のように簡単に出来ますが…。 サンプル: static HBITMAP hBitmap; ←『static』を付ける HINSTANCE hInstance; hInstance = (HINSTANCE)(INT64)GetWindowLong( hDlg, GWL_HINSTANCE ); hBitmap = LoadBitmap( hInstance, MAKEINTRESOURCE(IDC_BITMAP) ); SendDlgItemMessage( hDlg, IDC_BITMAP, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM)hBitmap ); 解説: ・『hDlg』がダイアログのウインドウ・ハンドルです。 ・『IDC_BITMAP』が『ピクチャー・コントロール』の ID コードです。 ・『SendDlgItemMessage』関数で簡単にビットマップを表示できます。 最後に: ・『hBitmap』が不要になったら、つまりプログラムを終了するときに『DeleteObject』関数で  『hBitmap』ハンドルを破棄して下さい。このため『ピクチャー・コントロール』に表示し  続けるには『hBitmap』の変数を『static』などを指定して何処かに保存しておく必要があります。 ・『hBitmap』ハンドルを破棄するには『DeleteObject(hBitmap);』の1行です。簡単です。 ・以上。おわり。

参考URL:
http://web.kyoto-inet.or.jp/people/ysskondo/from16/chap16.html
yu042122
質問者

お礼

ありがとうございましたぁ^^

関連するQ&A