找回密码
 立即注册
收起左侧

QVBoxLayout的删除问题

3
回复
7468
查看
[复制链接]
累计签到:1 天
连续签到:1 天
来源: 2014-8-4 15:21:25 显示全部楼层 |阅读模式
1Qter豆
我想做个界面,上面有个选择框,下面有几排东西。下面几排东西的排数,与上面选项的选择有关。当上面选择1的时候下面1排东西。当上面选择2的时候下面2排东西。
我现在的做法是,下面我用了一个widget,当上面选择数据后,先delete widget->layout();然后widget->setLayout(newLayout);但是出现的问题是每次delete layout只能删除layout的一行。
应该怎么做才能实现我要的功能啊。
附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

我看了下api,删除layout中的元素貌似只能一个一个的删,那你循环layout.count()来删就行了
回复

使用道具 举报

累计签到:2 天
连续签到:1 天
2014-8-4 15:21:26 显示全部楼层
我看了下api,删除layout中的元素貌似只能一个一个的删,那你循环layout.count()来删就行了
回复

使用道具 举报

累计签到:9 天
连续签到:1 天
2014-8-5 08:40:17 显示全部楼层
选项个数有上限吗?qt的扩展窗口可以使用隐藏,显示的方法实现。你这个也是也是一个道理。
回复

使用道具 举报

累计签到:2 天
连续签到:1 天
2014-8-9 20:37:56 显示全部楼层
你在下拉框下面先放一个垂直布局,然后在下拉框的currentIndexChanged(QString) 槽函数中写一段代码:根据你的下拉框选择来动态生成一组水平布局、下拉框和输入框,并将生成的下拉框和输入框加到水平布局中,然后用垂直布局的addLayout()方法加入新生成的水平布局。当然在槽函数开始处要先移除垂直布局中的所有元素,否则当你选择下拉框其他值时,前面的几排不会被移除,思路应该是这个
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了