• 5608阅读
  • 6回复

qt 如何清除主窗体上的子widget [复制链接]

上一主题 下一主题
离线feiyang0725
 

只看楼主 倒序阅读 楼主  发表于: 2012-09-10
关键词: 显示widget删除
我在主窗体上添加一个widget显示完成之后要删除它,再来显示别的widget,该怎么处理?
离线淳于半邪

只看该作者 1楼 发表于: 2012-09-10
如果是隐藏的话用QStackedWidget
如果是删除的话用定时器试试
离线feiyang0725

只看该作者 2楼 发表于: 2012-09-10
还是删不掉,主要是是获取不到这个widget,我是在verticalLayout里面直接添加的widget,删除的时候
QObjectList widgetlist=ui->verticalLayout->children();这样获取不到。。
widgetlist.count()一直是0.。。
请问该怎么办?
离线shiziyang

只看该作者 3楼 发表于: 2012-09-10
生成时就把它的指针记下来,然后删的时候把父窗体设成空,再delete
离线feiyang0725

只看该作者 4楼 发表于: 2012-09-10
直接删除指针也是不行,删除了再点击就不会添加进去。。
有更好的办法吗?
离线XChinux

只看该作者 5楼 发表于: 2012-09-10
有没有放到布局中?如果没有的话,则直接mywidget->deleteLater()就行了。如果有放到布局中,先将它从布局中删除掉,然后mywidget->deleteLater();
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线weinkym

只看该作者 6楼 发表于: 2012-09-11
将要删除的widget定义成一个成员变量 不要的时候删除 要插入是就新建一个
快速回复
限100 字节
 
上一个 下一个