通常我看到,在Qt用户界面中使用QComboBox
时,为了使用QString
中的当前QComboBox
文本运行程序,必须有{{1}通过按下QPushButton
中当前QString
文本运行的程序,可以获得当前QComboBox
文本。但是我想知道QString
中是否有任何功能,它会自动将当前已更改的QComboBox
文本从QString
传递给程序。我的意思是,当我更改QComboBox
当前文本时,程序将自动运行此特定当前文本的操作,而不是一次又一次按QComboBox
。
这可能是一项非常简单的功能,但令人惊讶的是我无法找到它。
感谢您的帮助。提前谢谢。
答案 0 :(得分:2)
您可以使用像
这样的QComboBox信号void currentIndexChanged(int index)
void currentIndexChanged(const QString &text)
void currentTextChanged(const QString &text)
void editTextChanged(const QString &text)
将这些信号连接到正确的插槽,它会自动通知插槽。
答案 1 :(得分:0)
看一下documentation,可以看到这个问题的可用通知信号:
void currentIndexChanged(int index)
void currentIndexChanged(const QString & text)
使用它们可以解决问题。
您可以使用 connect 来处理事件:
connect(ui->comboBox, SIGNAL(currentIndexChanged(QString)), SLOT(yourfunction(QString)));
创建自己的yourfunction()
或仅使用Qt Creator界面。