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

相关推荐
予枫的编程笔记几秒前
【Redis实战进阶篇】高并发下数据安全与性能平衡?Redis准存储三大核心场景实战指南
数据库·redis·缓存·高并发优化·电商实战·redis准存储·redis pipeline
橘橙黄又青1 分钟前
List和Map篇
java·开发语言·面试
曹牧1 分钟前
Java:包含空字符字段的对象序列化为JSON字符串
java·开发语言
jiunian_cn1 分钟前
【Redis】Redis基本全局命令
数据库·redis·缓存
m0_561359671 分钟前
高级爬虫技巧:处理JavaScript渲染(Selenium)
jvm·数据库·python
霖霖总总2 分钟前
[小技巧48]MySQL 8.0 主从复制常见问题全解析:从原理到排障实战
数据库·mysql
黎雁·泠崖2 分钟前
Java方法重写Override:规则+底层本质+与重载区别
java·开发语言
猿小羽3 分钟前
Spring AI + MCP 实战:构建标准化 AI 智能代理与上下文集成
java·spring boot·llm·ai agent·spring ai·anthropic·mcp
高山上有一只小老虎4 分钟前
mybatisplus分页查询版本 3.5.8 以下和版本 3.5.9及以上的区别
java·spring boot·mybatis
黑棠会长4 分钟前
ABP框架04.复杂业务关系实现(DDD实战)
数据库·c#·.net·ddd·abp