タイトルバーのアイコンについて

[戻る]
モーモー 2002/12/25(水) 14:32:01
vc++6.0 MFC を使って、あるアプリケーションを作っています。

今、タイトルバーの左上にあるアイコンが、MFCのデフォルトのアイコンのままで
リソースをいじっても変更できません。
アイコンを変更するには、どこに何を記述すればよいのでしょうか?

HB 2002/12/25(水) 14:42:27
ダイアログのコンストラクタで
ダイアログのアイコンをロードしているはずなのですが・・・。

CMyDlg::CMyDlg(CWnd* pParent /*=NULL*/)
    : CDialog(CMyDlg::IDD, pParent)
{
    m_hIcon = AfxGetApp()->LoadIcon(IDI_ICON1);
}                      ----------
                       ↑
                                   ここのアイコン名は、編集したアイコン名に
                   なっていますか?

一度確認してみてください。

モーモー 2002/12/25(水) 15:05:38
ダイアログではなくて、メインウィンドウなんですが、
それは、どこに記述するんでしょうか?

tib 2002/12/25(水) 15:20:31
Resource View > Icon > IDR_MAINFRAME を開いて、デバイス=スモール(16x16)を編集し
てみてください。

モーモー 2002/12/25(水) 15:26:42
[[解決]]
できました!!!
HBさん、tibさん、ありがとうございましたm(__)m

でも、なんでデバイスの設定が(32x32)ではダメで(16x16)ならいいんでしょう?
理由を知っていたらでいいので教えてください。

渋木宏明(ひどり) [E-Mail] [HomePage] 2002/12/25(水) 15:34:50
>理由を知っていたらでいいので教えてください。

「仕様」でしょう。

1つのアイコンリソースは複数サイズのアイコンを格納できます。

キャプションバーに表示されるアイコンのサイズは 16x16 なので、アイコンリソース中
に 16x16 サイズのアイコンが格納されていれば、それを利用するのは自然な動作だと思
います。

tib 2002/12/25(水) 15:44:58
エクスプローラーを立ち上げて、
 表示 > 大きいアイコン
 表示 > 小さいアイコン
って選べますよね。ここでどちらでも表示できるように、アイコンファイルは「大きいの
と小さいの」の2つの画像を格納しているのです。決して大きい画像をムリヤリ縮小して
いるわけではないのです。

で、タイトルバーに表示されるのは小さいアイコンだ、ということ。

モーモー 2002/12/25(水) 15:50:51
なるほど〜。
渋木宏明(ひどり) さん、tibさん、ありがとうございました!!!

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