Qt中的标准“关于”对话框

时间:2011-04-03 08:06:55

标签: qt dialog designer

在Qt中实现“关于”应用程序对话框的标准方法是什么?你知道,当你去帮助时弹出的那种>关于......来自应用程序菜单。我正在使用Qt Designer来布局我的主窗口,但我不需要任何花哨的东西。用2行代码代替在Qt Designer中创建新类或新表单会很好...

4 个答案:

答案 0 :(得分:24)

您可以使用QMessageBox::about来简单介绍对话框,或者如果您需要更特殊/更精细的内容,可以编写自己的QDialog子类。

答案 1 :(得分:5)

  1. 创建表单。右键单击Project,Add New ..,然后在Files and Classes中选择Qt,在右侧选择Qt Designer Form Class,然后单击选择..
  2. 选择不带按钮的对话框,然后单击下一步。
  3. 将其命名,例如"关于"。
  4. 在设计器中打开About.ui并根据需要更改此窗口,即添加图标,文本,按钮(可能只有OK按钮)并保存。
  5. 在mainwindow.h中添加此对象,即About *about;
  6. 在mainwinodw.cpp实例化它,about = new About(this);如果你放0而不是this,它将不会是"模态"窗口,所以在括号中添加this
  7. 转到Designer并在Action Editor中右键单击菜单项,然后选择Go to slot - >触发。
  8. 在该位置写下about->show();

答案 2 :(得分:3)

在我的程序Wallch(http://sourceforge.net/projects/wall-changer/)中,我添加了一个新的qt设计器表单类。

一切正常!

(我提到了我的应用程序的名称,所以如果你想检查项目,不是因为它是我的应用程序)

答案 3 :(得分:0)

这是我使用Python / PySide2的方法:

首先设置菜单/操作(我在QMainWindow子类的__init__函数中进行了此操作):

menu = self.menuBar().addMenu('&Help')

about_action = QAction('&About', self)
about_action.triggered.connect(self.about)
menu.addAction(about_action)

然后创建一个新插槽以调用QMessageBox.about

@Slot()
def about(self):
    QMessageBox.about(self, 'title', 'text')