Winapi 在对话框中显示大于32x32的图标

Winapi 在对话框中显示大于32x32的图标,winapi,win32gui,Winapi,Win32gui,嗨,我在win32中创建了一个对话框: ABOUTBOX DIALOG DISCARDABLE 32, 32, 180, 100 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU FONT 8, "MS Sans Serif" BEGIN DEFPUSHBUTTON "OK",IDOK,66,80,50,14 ICON "ID_MYICON_2",IDC_STATIC,0,0,48,48 CTEXT "com

嗨,我在win32中创建了一个对话框:

ABOUTBOX DIALOG DISCARDABLE 32, 32, 180, 100
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
FONT 8, "MS Sans Serif"
BEGIN
    DEFPUSHBUTTON "OK",IDOK,66,80,50,14
    ICON "ID_MYICON_2",IDC_STATIC,0,0,48,48
    CTEXT "comment1",IDC_STATIC,40,12,100,8
    CTEXT "comment2",IDC_STATIC,7,40,166,8
    CTEXT "comment3",IDC_STATIC,7,52,166,8
END
图标文件包含不同大小的图像,即16x16、32x32、48x48等,但上述代码仅允许将其显示为32x32。即使我把它改成

    ICON "ID_MYICON_2",IDC_STATIC,0,0,16,16
。。它仍然显示为32x32。如何完全控制图标大小?我的初衷是显示bmp


非常感谢任何帮助。

这是设计的行为。见:

该样式忽略CreateWindow参数nWidth和nHeight;这个 控件自动调整自身大小以适应图标按其使用方式 在LoadIcon功能中,SS_图标样式只能加载 尺寸SM_CXICON和SM_CYICON。这一限制可以绕过 除了使用SS_图标外,还可以使用SS_REALSIZEIMAGE样式


此外,没有任何东西阻止您以编程方式加载48x48图标并将其传递给控件。

如果在*.ico中只包含48x48图标文件,会发生什么情况?谢谢。工作很愉快。