关于Qt,我有一个问题。 我希望用户在“普通编辑文本”框中写一个单词。一旦写入单词并从该框中删除光标,我希望将该单词保存在ComboBox中。怎么能实现这个目标呢?
答案 0 :(得分:2)
将编辑中的editingFinished信号连接到插槽(类上的自定义插槽或lambda函数,如下所示),然后在该插槽中从编辑中获取文本并将其添加到框中的项目。
让我们假设你有c ++ 11:
QComboBox *myBox;
QLineEdit *myEdit;
connect(myEdit, &QLineEdit::editingFinished, [myBox, myEdit](){
myBox->addItem(myEdit->text());
});
您需要根据您的应用程序更新代码,但上述内容应该为您提供所需的想法和指导。
答案 1 :(得分:0)
如何将QLineEdit的当前内容添加到下拉菜单(ComboBox)?
假设您有一个以QLineEdit
和QComboBox
为成员的班级,并且还有一个与updateDropdown()
方法相关联的广告位,例如
class MainWindow : public QMainWindow {
Q_OBJECT;
QLineEdit* lineEdit;
QComboBox* dropDown;
// ...
public slots:
void updateDropdown();
};
你可以简单地使用
void MainWindow::updateDropdown() {
dropDown->addItem(lineEdit->text());
}