Header:#include < QDialog >
qmake:QT += widgets
Inherits:QWidget
Inherited By:QColorDialog, QErrorMessage, QFileDialog, QFontDialog, QInputDialog, QMessageBox, QProgressDialog, and QWizard
Public Types
enum DialogCode { Accepted, Rejected }
Properties
modal : bool
sizeGripEnabled : bool
Public Functions
QDialog(QWidget *parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags())
virtual ~QDialog()
bool isSizeGripEnabled() const
int result() const
void setModal(bool modal)
void setResult(int i)
void setSizeGripEnabled(bool)
Reimplemented Public Functions
virtual QSize minimumSizeHint() const override
virtual void setVisible(bool visible) override
virtual QSize sizeHint() const override
Public Slots
virtual void accept()
virtual void done(int r)
virtual int exec()
virtual void open()
virtual void reject()
Signals
void accepted()
void finished(int result)
void rejected()
Reimplemented Protected Functions
virtual void closeEvent(QCloseEvent *e) override
virtual void contextMenuEvent(QContextMenuEvent *e) override
virtual bool eventFilter(QObject *o, QEvent *e) override
virtual void keyPressEvent(QKeyEvent *e) override
virtual void resizeEvent(QResizeEvent *) override
virtual void showEvent(QShowEvent *event) override
Detailed Description
对话框窗口是一个顶级窗口,主要用于短期任务和与用户的简短通信。对话框可以是模态的也可以是非模态的。qdialog可以提供返回值,并且它们可以具有默认按钮。qdialog也可以使用setSizeGripEnabled()在其右下角设置一个QSizeGrip。
注意QDialog(以及任何其他Qt::Dialog类型的小部件)使用父小部件与Qt中的其他类略有不同。对话框始终是顶级小部件,但如果它有父部件,它的默认位置将位于父部件的顶级小部件的顶部中心(如果它本身不是顶级部件)。它还将共享父任务栏条目。
使用QWidget::setParent()函数的重载来更改QDialog小部件的所有权。此函数允许您显式设置重嵌的小部件的窗口标志;使用重载函数将清除指定窗口系统属性的窗口标志(特别是它将重置Qt::Dialog标志)。
注意:对话框的父关系并不意味着对话框将总是堆叠在父窗口的顶部。要确保对话框始终位于顶部,请将对话框设置为模态。这也适用于对话框本身的子窗口。为了确保对话框的子窗口保持在对话框的顶部,将子窗口也设置为模态。
对话框窗口是一个顶级窗口,主要用于短期任务和与用户的简短通信。对话框可以是模态的也可以是非模态的。qdialog可以提供返回值,并且它们可以具有默认按钮。qdialog也可以使用setSizeGripEnabled()在其右下角设置一个QSizeGrip。
注意QDialog(以及任何其他Qt::Dialog类型的小部件)使用父小部件与Qt中的其他类略有不同。对话框始终是顶级小部件,但如果它有父部