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的生存周期太短了。

相关推荐
gameboy0311 小时前
从MySQL迁移到PostgreSQL的完整指南
数据库·mysql·postgresql
xdl25991 小时前
Spring Boot中集成MyBatis操作数据库详细教程
数据库·spring boot·mybatis
回到原点的码农1 小时前
Spring Data JDBC 详解
java·数据库·spring
gf13211112 小时前
python_查询并删除飞书多维表格中的记录
java·python·飞书
zb200641202 小时前
Spring Boot 实战:轻松实现文件上传与下载功能
java·数据库·spring boot
CSharp精选营2 小时前
SQL Server安装避坑:这8个奇葩报错你遇到过几个?
数据库·sql server·安装指南·避坑
一勺菠萝丶2 小时前
Flowable + Spring 集成踩坑:流程结束监听器查询历史任务为空 & 获取不到审批意见
java·数据库·spring
jwn9992 小时前
Spring Boot 整合 Keycloak
java·spring boot·后端
宁波阿成2 小时前
OpenClaw 在 Ubuntu 22.04.5 LTS 上的安装与问题处理记录
java·linux·ubuntu·openclaw·龙虾
mldlds2 小时前
SpringBoot详解
java·spring boot·后端