Qt 如何制作小部件的QVector?
如何生成动态数量的小部件的Qt 如何制作小部件的QVector?,qt,qt4,qwidget,qvector,Qt,Qt4,Qwidget,Qvector,如何生成动态数量的小部件的QVector(或其他容器类),例如qt4中的QPushButton或QComboBox 我在窗口类的构造函数中使用了以下内容: QVector<QComboBox*> foo; // Vector of pointers to QComboBox's QVector foo;//指向QComboBox的指针向量 现在我想用一些可以动态变化的控件来填充它: for(int count = 0; count < getNumControls(); +
QVector
(或其他容器类),例如qt4中的QPushButton
或QComboBox
我在窗口类的构造函数中使用了以下内容:
QVector<QComboBox*> foo; // Vector of pointers to QComboBox's
QVector foo;//指向QComboBox的指针向量
现在我想用一些可以动态变化的控件来填充它:
for(int count = 0; count < getNumControls(); ++count) {
foo[count] = new QComboBox();
}
for(int count=0;count
我已经找了几个小时试图找到这个问题的答案。Qt论坛提到制作一个QPtrList
,但该类在Qt4中不再存在。
稍后,我将尝试使用数组样式索引或.at()
函数从每个文本获取文本值
我非常希望能举一个声明、初始化和填充任何QWidgets
(QComboBox
,QPushButton
,等等)的任何数据结构的例子。给你:)
#包括
#包括
#包括
...
QList列表;
...
列表文本();
标签->设置文本(“我的文本”);
}
如果您只是想让一个简单的示例工作,那么您的小部件有一个父级(用于上下文/清理)是很重要的
希望这有帮助
foo[count] = new QComboBox();
这不会影响foo的大小。如果索引计数中还没有项,则此操作将失败。
请参阅,或者Operator希望将.ui文件中的组合框插入列表。我这样插入:
QList-listComboBox代码>listComboBox comboBoxTitle)代码>并按如下方式检索:QComboBox*comboBox=listComboBox.at(i)代码>一切正常!:)QVector现在比QList()更受欢迎。
foo[count] = new QComboBox();
QVector<QComboBox*> foo;
// or QList<QComboBox*> foo;
for(int count = 0; count < getNumControls(); ++count) {
foo.push_back(new QComboBox());
// or foo << (new QComboBox());
}
foreach (QComboBox box, foo)
{
// do something with box here
}