我正在使用QComboBox测试一些Qt代码。
单击并展开QComboBox时,它会从列表中的当前所选项目位置展开。这种行为似乎不正确,但我没有做任何会改变默认行为的行为。
因此,如果我第一次展开此框,则会自选择框中的第一项以来向下展开。如果我然后选择中间项并关闭并再次打开它,当它打开时,它会向上扩展一半,向下扩展一半。这是因为选择了中间项目。如果我选择底部项目,然后再次关闭并展开,它将完全向上扩展,因为所选项目位于项目列表的底部。
我正在Linux Mint 18.2上运行该应用程序。这只是QComboBoxes的设计方式,还是有一种方法可以改变这种行为。
操纵此框的唯一代码是......
for ( QStringList::const_iterator i = colorNames.constBegin();
i != colorNames.constEnd(); ++i ) {
QPixmap solidPixmap( 20, 10 );
solidPixmap.fill( QColor( *i ) );
QIcon* solidIcon = new QIcon( solidPixmap );
foreColorBox->addItem( *solidIcon, *i );
backColorBox->addItem( *solidIcon, *i );
}