PURE WIN32应用程序中的Z-排序

时间:2018-12-11 14:40:05

标签: c++ winapi dialog

我有一个使用CreateDialog()创建的对话框。我有两个静态图片控件,一个带有SS_BLACKFRAME,另一个是使用SendDlgItemMessage()设置的位图类型的图片控件。

.rc文件中的顺序为:

CONTROL         "",IDC_PROMPT_RIBBON,"Static",SS_BLACKRECT,0,0,260,30
CONTROL         "",IDC_REBOOT_ICON,"Static",SS_BITMAP,10,11,10,9

IDC_REBOOT_ICON使用HBITMAP

禁用IDC_PROMPT_RIBBON时,一切正常。

启用该图标后,即使必须将图标绘制在第一个控件的下方,该图标也始终会绘制在第一个控件的下方。我试图通过SetWindowPos()手动设置z顺序,但似乎没有任何作用。

我想念什么?

设计器中的外观(我应该得到的):

image

我得到的是:

image

单步执行程序时,我确实可以确认首先绘制了图像。为什么会这样?

PS。没有MFC。

我的对话框样式是

DS_ABSALIGN | DS_SYSMODAL | DS_SETFONT | DS_MODALFRAME | DS_SETFOREGROUND | DS_3DLOOK | DS_FIXEDSYS | WS_POPUP | WS_CAPTION

0 个答案:

没有答案