【发布时间】:2014-11-12 18:47:46
【问题描述】:
我需要在QComboBox 中获取一个QStringList 或包含所有QStrings 的数组。
我找不到执行此操作的QComboBox 方法,实际上我什至找不到执行此操作的QAbstractItemModel 方法。
这真的是我唯一的选择吗:
std::vector< QString > list( myQComboBox.count() );
for( auto i = 0; i < list.size(); i++ )
{
list[i] = myQComboBox.itemText( i );
}
【问题讨论】:
-
没有这样的功能,AFAK。你为什么不喜欢你使用的方法(迭代组合框中的所有项目)?
-
@vahancho 我认为这很浪费,尤其是随着
QComboBox的大小增长。 -
但是也许将组合框的内容存储到另一个容器中也很浪费?你为什么需要那个?这可以解释为什么API中没有这样的功能。
-
值的容器为您提供了成员函数
QComboBox::itemText无法获得的什么? -
我要清除
myQComboBox并重新填充它,我需要识别已更改的元素。
标签: c++ arrays qt qstring qcombobox