0

您好想QCombobox用等于 a 中设置的变量的多个项目填充 aQSpinBox

QSpinbox值更改为 N 时,组合框应显示从 0 到 N 编号的相同数量的选项。

是否有可能做到这一点QObject::connect

4

1 回答 1

2

你可以使用信号QSpinBox::valueChanged ( int i )

实现您自己的类,该类派生自QComboBox并创建一个与信号具有相同签名的插槽。

就像是:

public Q_SLOTS:
on_setItemsFromSpinBox( int i );

然后您可以将信号连接到插槽。

connect( m_spinbox,
         SIGNAL(valueChanged(int)),
         m_my_combobox,
         SLOT(on_setItemsFromSpinBox(int)) );

在插槽中,您清除组合框 ( QComboBox::clear ()),然后使用一个循环,在该循环中创建与您在插槽中从信号接收的整数指定的一样多的项目。

于 2012-01-31T12:39:07.527 回答