MFC 窗体样式修改
2013-12-20 09:27
225 查看
窗体创建之后,如何设置窗体的样式呢?
一般情况下使用GetWindowLongW与SetWindowLongW即可实现窗体样式的修改或者使用ModifyStyle。
关于MFC存在GetWindowLongW和GetWindowLongA使用哪一个,可以通过 IsWindowUnicode(this->m_hWnd)获取是使用哪一类型,true则使用GetWindowLongW反之使用GetWindowLongA。
参数:
hWnd
窗口句柄及间接给出的窗口所属的窗口类。
nlndex
指定要获得值的大于等于0的值的偏移量。有效值的范围从0到额外窗口内存空间的字节数一4例如,若指定了12位或多于12位的额外类存储空间,则应设为第三个32位整数的索引位8。要获得任意其他值,指定下列值之一:
在hWnd参数标识了一个对话框时也可用下列值:
参考:http://baike.baidu.com/view/1080267.htm
一般情况下使用GetWindowLongW与SetWindowLongW即可实现窗体样式的修改或者使用ModifyStyle。
关于MFC存在GetWindowLongW和GetWindowLongA使用哪一个,可以通过 IsWindowUnicode(this->m_hWnd)获取是使用哪一类型,true则使用GetWindowLongW反之使用GetWindowLongA。
LONG style = ::GetWindowLongW(this->m_hWnd,GWL_STYLE);//获取原窗体的样式 style&=~(WS_CAPTION | DS_MODALFRAME|WS_EX_DLGMODALFRAME | WS_EX_WINDOWEDGE);//更改样式 ::SetWindowLongW(this->,GWL_STYLE,style);//重新设置窗体样式
ModifyStyle(userForm.m_hWnd,WS_CAPTION | DS_MODALFRAME|WS_EX_DLGMODALFRAME | WS_EX_WINDOWEDGE,0,0); //------------------------------------------------------------------------------// ModifyStyle(WS_CAPTION,0,0); //去除标题栏 ModifyStyle(0,WS_THICKFRAME,0); //添加 WS_THICKFRAME风格 ModifyStyle(0,WS_EX_TOOLWINDOW,0); //设置工具栏窗口风格 ModifyStyleEx(0,WS_EX_ACCEPTFILES,0); //设置Accept files 属性
参数:
hWnd
窗口句柄及间接给出的窗口所属的窗口类。
nlndex
指定要获得值的大于等于0的值的偏移量。有效值的范围从0到额外窗口内存空间的字节数一4例如,若指定了12位或多于12位的额外类存储空间,则应设为第三个32位整数的索引位8。要获得任意其他值,指定下列值之一:
值 | 意义 |
---|---|
GWL_EXSTYLE (-20) | 获得扩展窗口风格。 |
GWL_HINSTANCE (-6) | 获得应用事例的句柄。 |
GWL_HWNDPARENT (-8) | 如果父窗口存在,获得父窗口句柄。 |
GWL_ID (-12) | 获得窗口标识。 |
GWL_STYLE (-16) | 获得窗口风格。 |
GWL_USERDATA (-21) | 获得与窗口有关的32位值。每一个窗口均有一个由创建该窗口的应用程序使用的32位值。 |
GWL_WNDPROC (-4) | 获得窗口过程的地址,或代表窗口过程的地址的句柄。必须使用CallWindowProc函数调用窗口过程。 |
值 | 意义 |
---|---|
DWL_DLGPROC (4) | 获得对话框过程的地址,或一个代表对话框过程的地址的句柄。必须使用函数CallWindowProc来调用对话框过程。 |
DWL_MSGRESULT (0) | 获得在对话框过程中一个消息处理的返回值。 |
DWL_USER (8) | 获得应用程序私有的额外信息,例如一个句柄或指针。 |
相关文章推荐
- MFC单文档视图中修改窗体标题、窗体样式
- MFC单文档视图中修改窗体标题、窗体样式
- 关于MFC窗体样式随系统主题变化
- 基于MFC如何修改按钮,窗体背景色
- DevExpress自学笔记—整体修改窗体及控件的皮肤样式3
- 如何修改 MFC Dialog 窗体的类名???
- MFC 修改窗口样式
- WPF 窗体样式修改
- MFC 窗体的样式
- MFC 修改 单文档 SDI 窗体 标题
- DevExpress自学笔记—整体修改窗体及控件的皮肤样式2
- DevExpress自学笔记—整体修改窗体及控件的皮肤样式1
- 单/多文档的窗体类属性修改(VC_MFC)
- MFC窗体的扩展样式和其值
- MFC修改窗体背景颜色
- MFC学习 修改窗口样式
- MFC中从窗体类外修改控件属性的几种方法
- MFC 窗体字体加载 触发修改
- 公共事件,修改主窗体和子窗体的(主题)样式
- 如何修改 MFC Dialog 窗体的类名???