QT 检测窗口大小变动 (c++)

实现:

.h头文件中增加如下代码:

复制代码
public:
    void resizeEvent(QResizeEvent* event) override;

.cpp文件中增加如下代码:

复制代码
void YourProject::resizeEvent(QResizeEvent* event)
{
    //调用父类的resizeEvent函数
    QMainWindow::resizeEvent(event);

    //1、获取窗口改变后的大小
    QSize newSize = event->size();
    //实现对应的处理...

    //2、获取窗口变动后组件的大小(如果组件随着窗口一同变化)
    QSize labelSize = ui->label_1->size();
    //实现对应的处理...
    //例如改变一个大小不会变化的组件:
    ui->label_2->setFixedSize(labelSize);

    //3、获取窗口变动后组件的坐标位置
    int x = ui->label_1->pos().x();
    int y = ui->label_1->pos().y();
    int w = ui->label_1->width();
    int h = ui->label_1->height();
    //实现对应的处理..
    //例如改变一个组件的位置和大小
    ui->label_2->move(x+w*0.8,y+h*0.8);    //将label_2放在了label_1的右下角
    ui->label_2->resize(w*0.2,h*0.2);        //将label_2设置为了label_1的五分之一大小
    
}

以上代码为笔者在csdn网页上手打的,如有问题麻烦纠正,谢谢!

相关推荐
所以遗憾是什么呢?7 小时前
【题解】Educational Codeforces Round 195 (Rated for Div. 2) ABCDE
c++·动态规划·acm·icpc·ccpc·xcpc·codeforecs
Lhan.zzZ9 小时前
Qt WebEngineView 在 Linux 上无法加载网页:从“看不见 HTML“到“禁用沙箱“
linux·c++·qt
sysu_chenxy10 小时前
二重循环输出二维图形
c++
划破黑暗的第一缕曙光12 小时前
[C++]:2.类和对象(下)
c++·类和对象·对象·类
黎相思13 小时前
LRU Cache
c++·缓存
UIU11413 小时前
P1003 [NOIP 2011 提高组] 铺地毯
数据结构·c++·算法
xxwl58515 小时前
区域赛算法模版第四章---数据结构
数据结构·c++·算法
余额瞒着我当琳16 小时前
哈希表底层原理解析,直接定址法,哈希冲突,负载因子,哈希函数,开放定址法
java·c++·哈希算法·散列表
xxwl58517 小时前
区域赛算法模版第五章---数学与数论
c++·笔记·算法
Quz17 小时前
QML TabBar 标签栏交互效果合集
qt·动画·qml