Qt栅格布局的示例

cpp 复制代码
    QGridLayout * layout=new QGridLayout;
    for(int i=0;i<10;i++)
    {
        for(int j=0;j<6;j++){
            QLabel *label=new QLabel(this);
            label->setText(QString("%1行%2列").arg(i).arg(j));
            layout->addWidget(label,i,j);
        }
    }
    ui->widget->setLayout(layout);

这样写程序会崩溃的:

cpp 复制代码
    QGridLayout * layout=new QGridLayout;
    for(int i=0;i<10;i++)
    {
        for(int j=0;j<6;j++){
            QLabel label;
            label.setText(QString("%1行%2列").arg(i).arg(j));
            layout->addWidget(&label,i,j);
        }
    }
    ui->widget->setLayout(layout);

因为QLabel的生存周期太短了。

相关推荐
小bo波8 小时前
Java Swing 图形用户界面实验 —— 从算术练习到游戏开发的完整实践
java·课程设计·gui·游戏开发·扫雷·swing
咖啡八杯10 小时前
GoF设计模式——备忘录模式
java·后端·spring·设计模式
先吃饱再说13 小时前
存储的进化:从 MySQL 到浏览器缓存,数据到底住在哪?
数据库
Nturmoils14 小时前
字段太多看不全,ksql 的展开模式和输出控制怎么用
数据库·后端
Databend16 小时前
Agent 轨迹分析与归因的数据工程实践
大数据·数据库·agent
这个DBA有点耶16 小时前
SQL改写进阶:标量子查询的“隐形代价”与消除实战
数据库·mysql·架构
smallyoung17 小时前
数据库乐观锁深度解析:MySQL、PostgreSQL 实战 + Spring Boot 集成指南
数据库·mysql·postgresql
parade岁月17 小时前
MySQL JOIN解析:朴实无华但食之有味
数据库·后端
用户31693538118318 小时前
MySQL服务无法启动问题解决全记录
数据库
SamDeepThinking20 小时前
裁掉那个差程序员后,给你看团队里高手的代码:这个习惯,希望你有
java·后端·程序员