16 x 16のアイコンをセットできない

[戻る]
kai 2003/02/20(木) 08:41:39
Win2000,VC6,MFC,SDIの環境です。

ダイアログにピクチャーをはりつけ、タイプにアイコンを選択しました。
アイコンに32x32を設定すると下記のコードがなくてもアイコンは
表示されますが、16x16を設定するとアイコンが表示されません。
ピクチャーのIDはIDC_STATIC1で、m_hIconはダイアログのメンバで
HICON型です。
OnInitDialog()に下記のコードを書きましたが
アイコンが表示されません。

m_hIcon = AfxGetApp()->LoadIcon(IDI_SHIZUKU);
GetDlgItem(IDC_STATIC1)->SetIcon(m_hIcon, FALSE);

わかるかた、ご教授をお願いします。m(__)m

NEG(ねぐ) [E-Mail] [HomePage] 2003/02/20(木) 09:30:42
 CWnd::SetIconとCStatic::SetIconの違いかな?

kai 2003/02/20(木) 10:14:55
NEG(ねぐ)さん ご回答ありがとうございます。

> CWnd::SetIconとCStatic::SetIconの違いかな?

アイコンは表示されるようになりました。
でもリソースエディタのコンボボックスでは16x16を選択
しているにもかかわらず、アイコンは32x32のサイズがセットされてしまいます。

m_hIcon = AfxGetApp()->LoadIcon(IDI_SHIZUKU);

CWnd *pWnd = GetDlgItem(IDC_STATIC1);

pWnd->SetIcon(m_hIcon, FALSE);        // ここにおまじないでいれてみたけどダメです

((CStatic*)pWnd)->SetIcon(m_hIcon);

どうしたらよいでしょうか?

NEG(ねぐ) [E-Mail] [HomePage] 2003/02/20(木) 10:58:00
 LoadIconではなくLoadImageを使用します。
http://www24.cds.ne.jp/~neg/pro/piyo1/icon/hicon.html

kai 2003/02/20(木) 11:16:23
[[解決]]
>LoadIconではなくLoadImageを使用します。

NEG(ねぐ)さん うまくいきましたぁ〜!
ありがとうございました。感謝ですぅ。(^_^;

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