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

相关推荐
等D春C夏X3 分钟前
最终版C++11/14/17学习大纲(精准核对42条条款)
java·开发语言
diaya5 分钟前
麒麟V10 x86系统安装mysql
数据库·mysql
LaughingZhu10 分钟前
Product Hunt 每日热榜 | 2026-02-24
大数据·数据库·人工智能·经验分享·搜索引擎
Cg1362691597421 分钟前
HTML标题标签
java
feathered-feathered24 分钟前
测试实战【用例设计】自己写的项目+功能测试(1)
java·服务器·后端·功能测试·jmeter·单元测试·压力测试
洋洋技术笔记27 分钟前
Spring Boot自动装配原理
java·spring boot
iameyama44 分钟前
Amazon Redshift 和 BigQuery 数据类型区别
java·开发语言
-孤存-1 小时前
Spring Bean作用域与生命周期全解析
java·开发语言·前端
Remember_9931 小时前
SpringCloud:Nacos注册中心
java·开发语言·后端·算法·spring·spring cloud·list