关于ModifyStyleEx无效的问题

news/2024/11/24 1:46:15/

在做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函数了,用法与上面类似。


http://www.ppmy.cn/news/883740.html

相关文章

ModifyStyle

CWnd::ModifyStyle 1.作用 : 调用这个函数修改窗口的风格 2.函数原型: BOOL ModifyStyle ( DWORD dwRemove, DWORD dwAdd, UINT nFlags0 ); 3.参数含义: dwRemove 指定修改时要删除的窗风格。 dwAdd 指定修改时将要增加的窗口风格。 nFlags 该参数将被传给SetWindowPos&#x…

关于ModifyStyle ModifyStyleEx修改自定义控件的问题

继承于MFC控件,比如CStatic CEdit等等,在自定义代码中许多人反映无法更改控件的外观属相,这是因为大部分人没有通知主窗体自定义控件的外观更改了,可以使用下列代码进行更改: ModifyStyle(WS_BORDER,0,SWP_DRAWFRAME);…

ModifyStyle, ModifyStyleEx

1.wtl 中的CListViewCtrl调用ModifyStyle, ModifyStyleEx, 不起作用, 改成 _listCtrl.SetExtendedListViewStyle(_listCtrl.GetExtendedListViewStyle() | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES, 0); 参照http://www.cppblog.com/qiaodong/archive/2007/03/19/20153.html…

GetStyle,ModifyStyle,GetExStyle,ModifyStyleEx

要添加或除去窗口的普通风格,可以使用GetStyle()和ModifyStyle()方法来实现 要设置或去除窗口的扩展风格,可以使用GetExStyle()和ModifyStyleEx() 方法实现 1. CWnd::GetExStyle 与 CWnd::ModifyStyle (1) GetExStyle 原型: DWORD GetStyle() const; 作…

谈谈CListCtrl 扩展风格设置方法-SetExtendedStyle和ModifyStyleEx 比较

谈谈CListCtrl 扩展风格设置方法 --------------------------------------SetExtendedStyle和ModifyStyleEx 比较 对于初学者来说,当他需要设定listctrl的扩展风格时,常常想到用ModifyStyleEx 来设定,代码如下: ModifyStyleEx(0…

也谈VC中ModifyStyleModifyStyleEx无法改变控件的Style)

一个View中用到了一个CListCtrl,在OnInitialUpdate函数里面他调用了m_listCtrl.ModifyStyleEx(0, LVS_EX_FULLROWSELECT);但是结果是并没有改变View中这个ListCtrl的效果。 仔细的查阅了MSDN的关于ModifyStyleEx的说明,发现没什么可以的地方,…

ModifyStyle ModifyStyleEx修改自定义控件的问题

//ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW, SWP_DRAWFRAME); //ModifyStyleEx(WS_EX_STATICEDGE|WS_EX_WINDOWEDGE|WS_EX_DLGMODALFRAME,WS_EX_CLIENTEDGE, SWP_DRAWFRAME); //ModifyStyle(WS_BORDER, 0, SWP_DRAWFRAME); WS_EX_APPWINDOW属性 MSDN的解释是&am…

最常用的调试 golang 的 bug 以及性能问题的实践方法

1、最常用的调试 golang 的 bug 以及性能问题的实践方法? 场景1: 如何分析程序的运行时间与CPU利用率情况? (1) shell内置time指令 这个方法不算新颖,但是确很实用。 time是Unix/Linux内置多命令,使用时一般不用传过…