• MFC 窗体样式修改


    窗体创建之后,如何设置窗体的样式呢?

    一般情况下使用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函数调用窗口过程。
     
    在hWnd参数标识了一个对话框时也可用下列值:
    意义
    DWL_DLGPROC
    (4)
    获得对话框过程的地址,或一个代表对话框过程的地址的句柄。必须使用函数CallWindowProc来调用对话框过程。
    DWL_MSGRESULT
    (0)
    获得在对话框过程中一个消息处理的返回值。
    DWL_USER
    (8)
    获得应用程序私有的额外信息,例如一个句柄或指针
     
     
  • 相关阅读:
    LeetCode77. 组合
    LeetCode76. 最小覆盖子串
    LeetCode75. 颜色分类
    LeetCode74. 搜索二维矩阵
    LeetCode73. 矩阵置零
    LeetCode72. 编辑距离
    MySQL数据库基础知识点
    程序开发必知必会的MySQL基本命令行操作
    程序开发必知必会的Mysql数据库——初识
    初识HTML
  • 原文地址:https://www.cnblogs.com/mqxs/p/3483237.html
Copyright © 2020-2023  润新知