【发布时间】:2018-05-20 10:46:25
【问题描述】:
我想访问我的 QGridLayout 中的 QSlider 的值,但我没有找到正确的命令。 我尝试的一个例子:
QSlider* slider=ui->gridLayout->takeAt(1)->widget();
我得到的错误信息是:
无法在初始化中将 'QLayoutItem*' 转换为 'QSlider*'
是否有命令立即询问 QSlider 而不是小部件? 可以投吗?我试过了,但这也没有用。 我该如何解决这个问题?
【问题讨论】:
-
试试:
QSlider* slider = qobject_cast<QSlider *>(ui->gridLayout->takeAt(1)->widget()); -
请注意
QLayout::takeAt从布局中删除指定的项目。你可能想要QLayout::itemAt。 -
谢谢,它成功了!
标签: qt children qtwidgets qgridlayout