在做MFC时,有时候我们需要显示选择一个项目,比如需要标记所选择的图片控件。我们可以用这个函数:
BOOLModifyStyleEx
(
DWORD dwRemove,
DWORD dwAdd,
UINT nFlags
)
或者
BOOLModifyStyle
(
DWORD dwRemove,
DWORD dwAdd,
UINT nFlags
)
其中:
dwRemove 指定要删除的扩展属性,
dwAdd 指定修改时要增加的扩展属性,
nFlag 标志一般设置为 0 。
但有时,会发现,只有这一条语句没有效果,这就需要我们想办法来解决,这里提供一种找了好久的方法,可能对大家有用。
例如:
GetDlgItem(IDC_STATIC)->ModifyStyleEx(0,WS_EX_CLIENTEDGE|WS_EX_STATICEDGE|WS_EX_DLGMODALFRAME);
GetDlgItem(IDC_STATIC)->SetWindowPos(0,0,0,0,0,SWP_NOMOVE| SWP_NOSIZE | SWP_DRAWFRAME);
其中:IDC_STATIC为图片控件对应的ID,设置了client属性,staticedge属性以及modalframe属性,这些属性是在Extended Styles中的。
如果要修改Styles属性,就要用ModifyStyle函数了,用法与上面类似。