Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >[BCG]使属性页表单实现最大化最小化按钮1[可拖拽]

[BCG]使属性页表单实现最大化最小化按钮1[可拖拽]

作者头像
祥知道
发布于 2020-03-10 07:15:55
发布于 2020-03-10 07:15:55
79300
代码可运行
举报
文章被收录于专栏:祥的专栏祥的专栏
运行总次数:0
代码可运行

原创文章,欢迎转载。转载请注明:转载自 祥的博客

原文链接:http://blog.csdn.net/humanking7/article/details/52598085


提出问题

一般情况属性表单没有最大化,最小化按钮,如下图所示:

但是我们有时候需要最大化最小化,这就需要重新定义和实现Dialog的一些功能。

解决方案

实现 WM_CREATE 的消息响应函数,然后重新实现对话框的样式设置。

Step1 添加 WM_CREATE 的消息响应函数

Step2 核心代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
int QFXMainPpSheet::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    if (CBCGPPropertySheet::OnCreate(lpCreateStruct) == -1)
        return -1;

    // TODO:  在此添加您专用的创建代码
    //添加最大化最小化框
    ModifyStyle(0, WS_MAXIMIZEBOX|WS_MINIMIZEBOX, SWP_FRAMECHANGED|SWP_DEFERERASE);
    //使得属性页可以用鼠标拖拽 改变大小
ModifyStyle(WS_BORDER,  WS_THICKFRAME,  SWP_FRAMECHANGED);


    return 0;
}

实现效果

Next 问题

可以看出,属性页表单 最大化了,但是 下面的 属性页面 没有最大化,这是下一步要解决的问题。大致解决方案是当 * 父页面 ( 属性页表单 )* 发生变化时,下面的子页面 ( 属性页面 ) 将收到来自父页面的消息,应该要实现 WM_SIZE 这个消息响应函数。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
EasyPlayerPro-win配置全屏模式不能全屏是为什么
最近遇到一个项目团队是做全景视频播放的,希望用EasyPlayerPro做一个客户端程序,但是在调试DEMO的时候遇到一个问题,即配置了全屏模式后,视频只能出现在窗体左上角。
TSINGSEE青犀视频
2021/06/28
1.5K0
VC++6.0入门——第九讲 定制应用功能程序外观
好事文章地址:https://cloud.tencent.com/developer/article/2470499
Arya
2024/12/03
1050
VC++6.0入门——第九讲 定制应用功能程序外观
Excel用户窗体中添加最小化按钮及窗体最小化的代码实现
文章背景:用户窗体是Excel中的UserForm对象。在使用UserForm时,曾经目前遇到过两个问题。
Exploring
2022/08/10
2.6K0
Excel用户窗体中添加最小化按钮及窗体最小化的代码实现
dotnet 读 WPF 源代码笔记 使用 Win32 方法修改窗口的坐标和大小对窗口依赖属性的影响
咱可以使用 Win32 的 SetWindowPos 修改窗口的坐标和大小,此时 WPF 的窗口的 Left 和 Top 和 Width 和 Height 依赖属性也会受到影响,本文将会告诉大家在啥时候会同步更改 WPF 依赖属性的值,而什么时候不会
林德熙
2021/01/12
8030
MFC子窗口任务栏显示图标和主窗口最小化在系统托盘中显示图标
MFC子窗口任务栏显示图标很简单, 只需要在子窗口的初期化函数OnInitDialog()中添加ModifyStyleEx(WS_EX_TOOLWINDOW, WS_EX_APPWINDOW); 主窗口在系统托盘中显示图标以及恢复窗口是参考某位大神的代码 (一)  原理     1、最小化的原理:首先要将窗口隐藏,然后在右下角绘制图标。     2、恢复的原理:将窗口显示,再将托盘中的图片删除。 (二)程序实现     1、自定义消息WM_SHOWTASK:  #define WM_SHOWTASK (WM
Sindsun
2018/04/28
3.3K0
窗口风格(Window style)
参数: dwRemove 指定了在修改风格时要清除的窗口风格。 dwAdd 指定了在修改风格时要加入的窗口风格。 nFlags 要传递给SetWindowPos的标志,如果不应调用SetWinowPos,则为0。缺省值为0。
全栈程序员站长
2022/09/09
8970
博弈 - 利益最大化,风险最小化
博弈是指在一定的游戏规则约束下,基于直接相互作用的环境条件,各参与人依靠掌握的信息,选择各自策略(行动),以实现利益最大化和风险成本最小化的过程。简单来说,就是人与人之间为了谋取利益竞争。
Jimmy_is_jimmy
2022/11/16
6820
博弈 - 利益最大化,风险最小化
C# 窗体常用API函数 应用程序窗体查找
常用的处理窗体的API函数如下(注意:API函数必须放在窗体中...): 使用C#语言,要引用DllImport,必须要添加using System.Runtime.InteropServices命名空间 (1)获得当前前台窗体句柄 [DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]public static extern IntPtr GetForegroundWindow(); 返回值类型是IntPtr,即为当前
逸鹏
2018/04/10
4.1K0
WPF 稳定的全屏化窗口方法
本文来告诉大家在 WPF 中,设置窗口全屏化的一个稳定的设置方法。在设置窗口全屏的时候,经常遇到的问题就是应用程序虽然设置最大化加无边框,但是此方式经常会有任务栏冒出来,或者说窗口没有贴屏幕的边。本文的方法是基于 Win32 的,由 lsj 提供的方法,当前已在 500 多万台设备上稳定运行超过半年时间,只有很少的电脑才偶尔出现任务栏不消失的情况
林德熙
2021/08/13
5K0
WinForm 最大化、最小化、关闭按钮事件的拦截
private int WM_SYSCOMMAND = 0x112; private long SC_MAXIMIZE = 0xF030; private long SC_MINIMIZE = 0xF020; private long SC_CLOSE = 0xF060; protected override void WndProc(ref Message m) {     if (m.Msg == WM_SYSCOMMAND)     {         if (m.WParam.ToInt64() =
跟着阿笨一起玩NET
2018/09/18
1.5K0
QT隐藏窗口标题栏、最大化、最小化、关闭按钮
1. 隐藏标题栏: 隐藏标题栏后,最大化、最小化、关闭按钮 就相当于隐藏了。 main_gui_window w; w.setWindowFlags(Qt::Dialog|Qt::FramelessWindowHint); w.show(); 或者在构造函数里设置 this->setWindowFlags(Qt::Dialog|Qt::FramelessWindowHint); 2. 设置窗口以最大化方式显示 main_gui_window w; w.setWindowState(Qt::Wi
DS小龙哥
2022/01/12
5.4K0
解决winform中mdi子窗体加载时显示最大化最小化按钮的方法
场景:在mid加载子窗体的时候如果指定WindowState为Maximized,加载完成后主窗体会显示最大化、最小化、关闭的按钮图标。
跟着阿笨一起玩NET
2019/03/14
1.8K0
逻辑回归原理,最大化似然函数和最小化损失函数
经过一系列数学推导和证明,可知在逻辑回归模型中,最大化似然函数和最小化损失函数实际上是等价的,经典的数值优化算法,例如梯度下降和牛顿法,都可以求得其最优解。
zhangjiqun
2024/12/14
2210
逻辑回归原理,最大化似然函数和最小化损失函数
Winforms 可能遇到的 1000 个问题 去掉最大化和最小化按钮使用系统的图标禁止用户修改窗口大小隐藏标题栏的图标
如果需要去掉最大化和最小化按钮,只需要设置 MinimizeBox 或 MaximizeBox 为 false 请看下面代码
林德熙
2019/03/13
1.8K0
Winforms 可能遇到的 1000 个问题
            去掉最大化和最小化按钮使用系统的图标禁止用户修改窗口大小隐藏标题栏的图标
【读书笔记】Windows程序设计5
与从BeginPaint函数返回的设备句柄不同,从GetDC返回的设备句柄中的裁剪区域是整个客户区,而不仅仅
zhang_derek
2022/12/21
2.5K0
软件设计师复习资料「建议收藏」
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说软件设计师复习资料「建议收藏」,希望能够帮助大家进步!!!
Java架构师必看
2022/06/27
6.6K0
推荐阅读
相关推荐
EasyPlayerPro-win配置全屏模式不能全屏是为什么
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验