Cha*_*rns 2 qt qt4 qwidget qvector
如何使一个QVector小部件,如动态数的(或其他容器类),QPushButton或QComboBox在Qt的4?
我在我的窗口类的构造函数中使用了以下内容:
QVector<QComboBox*> foo; // Vector of pointers to QComboBox's
Run Code Online (Sandbox Code Playgroud)
现在我想用一些可以动态改变的控件来填充它:
for(int count = 0; count < getNumControls(); ++count) {
foo[count] = new QComboBox();
}
Run Code Online (Sandbox Code Playgroud)
我搜索了几个小时试图找到答案.Qt论坛提到了一个QPtrList,但Qt4中不再存在该类.我稍后尝试使用数组样式索引或.at()函数从每个文本中获取文本值.
我非常感谢声明,初始化,和填充的任何任何数据结构的一个例子QWidgets(QComboBox,QPushButton等)
bgs*_*bgs 10
干得好 :)
#include <QWidget>
#include <QList>
#include <QLabel>
...
QList< QLabel* > list;
...
list << new QLabel( parent, "label 1" );
..
..
foreach( QLabel* label, list ) {
label->text();
label->setText( "my text" );
}
Run Code Online (Sandbox Code Playgroud)
如果您只想让一个简单的示例工作,那么您的小部件具有父级(用于上下文/清理)的目的非常重要.
希望这可以帮助.