使控件大小随窗口变化

注意:
1.在使用的.cpp和.h中都要添加#include "ResizeControl.h"
2.在类对话框中为使用该功能的对话框类添加一个WM_SIZE消息,,,即是重载OnSize消息
在你使用的头文件加入

#include "ResizeControl.h"

然后定义一个变量

CResizeControl m_Resize;

在OnInitialUpdate() 或者OnInitialDlg()里
加入

m_Resize.SetOwner(this);
然后设置各个控件的跟随效果

m_Resize.SetResize(IDC_BUTTON,PK_TOP_LEFT,PK_BOTTOM_RIGHT); //左上角固定,右下角随窗口变化放大或缩小
其他可以类似加入
PK_BOTTOM_RIGHT,PK_BOTTOM_RIGHT  //随窗口左右上下移动,不会改变大小
PK_BOTTOM_LEFT,PK_BOTTOM_LEFT    //只随窗口上下移动,也不会改变大小
然后重载OnSize消息
在面里加入
//    CFormView::OnSize(nType, cx, cy);

m_Resize.OnSize(cx,cy);

转载于:https://www.cnblogs.com/rogee/archive/2010/11/03/1868012.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Qt 中,可以通过设置控件的布局来实现控件大小窗口大小变化。Qt 提供了多种布局方式,包括水平布局、垂直布局、网格布局等。这里以水平布局为例,介绍如何让控件大小窗口大小变化。 1. 在 Qt Designer 中选中需要自动调整大小控件,右键点击选择“布局”->“水平布局”。 2. 在“属性编辑器”中,选中“水平布局”,将“sizeConstraint”属性设置为“QLayout::SetDefaultConstraint”。 3. 在“属性编辑器”中,选中“水平布局”,将“stretch”属性设置为“1”。 4. 保存并运行程序,窗口大小变化时,控件大小会随着窗口大小变化。 下面是一个示例代码: ```python from PyQt5.QtWidgets import QApplication, QHBoxLayout, QLabel, QLineEdit, QWidget app = QApplication([]) window = QWidget() # 创建水平布局 layout = QHBoxLayout() # 创建标签和文本框控件 label = QLabel('Label:') edit = QLineEdit() # 将控件添加到布局中 layout.addWidget(label) layout.addWidget(edit) # 设置控件大小窗口大小变化 layout.setSizeConstraint(QLayout.SetDefaultConstraint) layout.setStretch(1, 1) # 将布局应用到窗口中 window.setLayout(layout) window.show() app.exec_() ``` 在上面的示例代码中,我们创建了一个水平布局,并将标签和文本框控件添加到布局中。然后,我们通过设置布局的“sizeConstraint”属性和“stretch”属性,实现控件大小窗口大小变化。最后,我们将布局应用到窗口中,并显示窗口
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值