2012-01-31 84 views
0

嗨想填充QCombobox与多个项目相当于在QSpinBox如何创建一个Qt组合框

设置的变量,当改变QSpinbox值N,则组合框应该显示相同数量的编号从0到N

选项是否有可能与QObject::connect

回答

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()),然后使用在由您在插槽从信号接收到的整数指定创建尽可能多的项目循环。

+0

谢谢,它的工作原理!非常感谢! – linello 2012-01-31 13:26:34

+0

没问题,线条。随意询问或接受答案,将问题标记为已解决。 – Exa 2012-01-31 23:37:49