Qt动态界面-控件删除问题

在项目中遇到要实现一个动态信息展示UI,so,需要动态删除控件

结构体保存所有新建控件并标识序列号【m_nSequence】

 

struct CStInfo

{

int m_nSequence;
QGridLayout * m_pGridLayout;
QLabel * m_pTaskNameLabel;//任务名称标签
QLabel * m_pTaskName;//任务名称
QLabel * m_pBeginTimeLabel;
QDateTimeEdit * m_pBeginTime;
QLabel * m_pEndTimeLabel;
QDateTimeEdit * m_pEndTime;
};

 

删除控件代码为:

void DlgInfo::clearLayoutQueue()

{

    //首先把要删除的控件的父控件指向设为空

    m_pLeftButton11->setParent(0);//左快进按钮,相当于<<

    m_pLeftButtion1->setParent(0);//左快进按钮,相当于<

    m_pRightButton1->setParent(0);//右快进按钮,相当于>

    m_pRightButton11->setParent(0);//右快进按钮,相当于>>

    //从主布局中把控件移除

    m_pGLayoutMain->removeWidget(m_pLeftButton11);

     m_pGLayoutMain->removeWidget(m_pLeftButton1);

     m_pGLayoutMain->removeWidget(m_pRightButton1);

     m_pGLayout

你可能感兴趣的:(technology)