我有一个很长的数字列表(491),我希望将它们全部放入Qt Creator中的Comb Box小部件中。手动进入是一种选择,但我觉得有一种更有效的方法可以将数字添加到框中。 有什么建议吗?
答案 0 :(得分:0)
您可以遍历存储容器并添加它们。
QComboBox *comboBox;
comboBox = new QComboBox( this );
comboBox ->setGeometry( 100 , 100 , 100 , 20 );
QList< int > intList;
intList.append( 1 );
intList.append( 2 );
intList.append( 3 );
intList.append( 4 );
intList.append( 5 );
intList.append( 6 );
intList.append( 7 );
foreach( const int &i , intList )
{
comboBox->addItem( "Item: " + QString::number( i ) , i );
}
或者我误解了你的问题?
要将文本文件中的数据导入QStringList,您可以执行以下操作:
QFile file( "/path/filename.txt" );
QStringList stringList;
if( ( !file.fileName( ).trimmed( ).isEmpty( ) ) &&
( file.exists( ) ) &&
( file.open( QIODevice::ReadOnly | QIODevice::Text ) ) )
{
QTextStream textStream( &file );
while( !textStream.atEnd( ) )
{
stringList << textStream.readLine( );
}
file.close( );
// then just fill the QComboBox Text.
comboBox->addItems( stringList );