Qt布局相关

这篇博客主要探讨了Qt布局管理中如何消除布局间的空隙以及如何清除原有的布局,为Qt开发者提供实用的解决策略。

Qt布局相关的问题

1.消除布局间的空隙

    QVBoxLayout *h_layout=new QVBoxLayout();
    h_layout->setMargin(0);
    h_layout->setSpacing(0);
    h_layout->setContentsMargins(0,0,0,0);

2.清除原有布局

 while(h_main->count())
    {
        QWidget *pWidget=h_main->itemAt(0)->widget();
        if (pWidget)
        {
            pWidget->setParent (nullptr);

            h_main->removeWidget(pWidget);
            delete pWidget;
        }
        else
        {
            QLayout *pLayout=h_main->itemAt(0)->layout();
            if (pLayout)
            {
                while(pLayout->count())
                {
                    QWidget *pTempWidget=pLayout->itemAt(0)->widget();
                    if (pTempWidget)
                    {
                        pTempWidget->setParent (nullptr);

                        pLayout->removeWidget(pTempWidget);
                        delete pTempWidget;
                    }
                    else
                    {
                        pLayout->removeItem(pLayout->itemAt(0));
                    }
                }
            }

            h_main->removeItem(h_main->itemAt(0));
        }
    }

参考

qt删除已有布局

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值