プロが教えるわが家の防犯対策術!

CWndクラスのMessageBox関数で表示される
メッセージボックス中の左上のアイコン
(警告アイコン等)のイメージってアイコンデータとして
取得する方法ってありますか?

いま、私がやりたいことというのは
CWnd::MessageBoxで表示されるメッセージボックスに
チェックボックスをつけてカスタマイズしたものを
つくろうとしていまして、さらにアイコン等の外観も
標準の警告アイコンを使用したいと考えています。

アイコンにこだわらなければ、CWinApp::DoMessageBoxを
アプリケーションクラスで実装してやれば良いだけなのかも
しれませんが、どうしてもアイコンを標準のものを使用したいのです。

ご存知の方がいらっしゃいましたら、
教えていただけたら幸いです。

A 回答 (2件)

★参考情報



HICON hIcon;

hIcon = AfxGetApp()->LoadIcon( IDI_INFORMATION ); // 水色(i)アイコン
hIcon = AfxGetApp()->LoadIcon( IDI_QUESTION ); // 水色(?)アイコン
hIcon = AfxGetApp()->LoadIcon( IDI_WARNING ); // 黄色(▲)アイコン(警告)
hIcon = AfxGetApp()->LoadIcon( IDI_ERROR ); // 赤色(×)アイコン(エラー)

その他:
hIcon = AfxGetApp()->LoadIcon( IDI_APPLICATION ); // アプリケーションのアイコン
hIcon = AfxGetApp()->LoadIcon( IDI_WINLOGO ); // Winロゴのアイコン
    • good
    • 0
この回答へのお礼

>Oh-Orangeさん

まさに欲しい情報はそれでした。
Winロゴのアイコンも取得できるんですね。
情報ありがとうございます!

お礼日時:2007/05/05 03:18

MFC は使ってないので知りませんが,Win32 API の ::LoadImage()


または ::LoadIcon() を使えば標準のアイコンが取得できます.

HICON hIcon = :LoadImage(NULL, iconId, IMAGE_ICON, 0, 0, LR_SHARED);
または
HICON hIcon = ::LoadIcon(NULL, iconId);

ここで,iconId は次のうちのいずれか.

IDI_APPLICATION
IDI_ERROR
IDI_INFORMATION
IDI_QUESTION
IDI_WARNING
IDI_WINLOGO

詳しくは ::LoadImage() または ::LoadIcon() のマニュアルを参照してください.
    • good
    • 0
この回答へのお礼

>noocyteさん

LoadIconであっさり警告アイコンが取得できるんですね。
早速ためしてみます。
回答を頂きましてありがとうございました。

お礼日時:2007/05/05 03:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!