我正在使用Qt Creator制作用户界面。
用户界面由两个或多个QLineEdit
和十个QPushButton
组成,用于输入0-9个数字到QLineEdit
秒。如何逐个在string
中输入0-9个数字QLineEdit
。
如果我按QPushButton
标签' 5'并且光标位于QLineEdit
(例如QLineEdit
1),则应附加“' 5'在QLineEdit
1中,或者如果QLineEdit
2被选中,则应附加“' 5'在QLineEdit
2和其他QPushButton
也分别。
答案 0 :(得分:0)
你的ui课程中可能有slot
,如下所示
void MyDialog::numberButtonPressed()
{
QPushButton* btn = qobject_cast<QPushButton*>(QObject::sender());
if (!btn)
return; // TODO error handling
ui.lineEdit->setText(ui.lineEdit->text() + btn->text());
}
然后QObject::connect
slot
的所有数字按钮。
欢呼声
答案 1 :(得分:0)
在向UI中的插槽添加按钮后的QT Creator中,转到功能并使用hasFocus()检查它是否具有焦点。
e.g。
void MainWindow::on_pushButton_clicked()
{
if(ui->lineEdit_1->hasFocus)
{
ui->lineEdit_1->setText("your text");
}
else if(ui->lineEdit_2->hasFocus)
{
ui->lineEdit_2->setText("your text");
}
}