如何在QT中的小部件中按lineEdit时按默认按钮 我使用Qt 4.8和C++,我需要一个默认的按钮,当在LeNeDIT中输入一些文本时,它会被按下,输入键被按下。

如何在QT中的小部件中按lineEdit时按默认按钮 我使用Qt 4.8和C++,我需要一个默认的按钮,当在LeNeDIT中输入一些文本时,它会被按下,输入键被按下。,c++,qt,qt4,C++,Qt,Qt4,根据按钮属性“默认值”的设置。 该行为仅适用于对话框 “默认按钮行为仅在对话框中提供。当按钮具有焦点时,始终可以通过按空格键从键盘上单击按钮。” 小部件是我所有GUI组件的容器,我怎么能有这种行为呢 谢谢。您可以将信号发送到插槽 方法1 从设计器中,您只需执行以下操作: 在lineEdit上单击鼠标右键 选择“转到插槽…” 选择returnPressed(): 按ok 在代码视图中,您将看到连接到所选信号的插槽 您只需调用所需按钮的click()插槽即可: 方法2 您可以手动将任何line

根据按钮属性“默认值”的设置。 该行为仅适用于对话框

“默认按钮行为仅在对话框中提供。当按钮具有焦点时,始终可以通过按空格键从键盘上单击按钮。”

小部件是我所有GUI组件的容器,我怎么能有这种行为呢

谢谢。

您可以将信号发送到插槽

方法1 从设计器中,您只需执行以下操作:

  • 在lineEdit上单击鼠标右键
  • 选择“转到插槽…”
  • 选择
    returnPressed()
  • 按ok
  • 在代码视图中,您将看到连接到所选信号的插槽
  • 您只需调用所需按钮的
    click()
    插槽即可:
  • 方法2 您可以手动将任何lineEdit的信号连接到任何按钮的插槽:

    在Qt 4语法中:

    connect(ui->lineEdit, SIGNAL(returnPressed()),
                ui->anyButton, SLOT(click()));
    
    在新的Qt 5语法中:

    connect(ui->lineEdit, &QLineEdit::returnPressed,
                ui->anyButton, &QPushButton::click);
    

    你能发布一些你试用过的示例代码吗?@Sumeet谢谢。我刚刚通过QtDesigner将此按钮的属性“default”设置为true。谢谢~我尝试了Method2 Qt4语法,现在它可以工作了