头文件准备
1、对话框——QDialog
QDialog 是一个用于创建对话框的类,它是 Qt 框架中的一个基本窗口部件。对话框通常用于与用户进行交互,例如输入数据、选择选项或显示消息等。
自定义对话框 | 特点 |
模态对话框 | 阻塞式创建对话框 无法对其他对话框做操作 |
非模态对话框 | 非阻塞式 激活时可以对其他窗口做操作 |
2、颜色对话框——QColorDialog
static QColor getColor(const QColor &initial = Qt::white,
QWidget *parent = nullptr,
const QString &title = QString(),
ColorDialogOptions options = ColorDialogOptions());
initial
:一个QColor
类型的参数,表示初始颜色,默认值为白色(Qt::white
)。parent
:一个QWidget
类型的指针,表示父窗口,默认值为nullptr
。title
:一个QString
类型的参数,表示对话框的标题,默认值为空字符串。options
:一个ColorDialogOptions
类型的参数,表示颜色对话框的选项,默认值为ColorDialogOptions()
。
3、文件对话框——QFileDialog
explicit QFileDialog(QWidget *parent = nullptr,
const QString &caption = QString(),
const QString &directory = QString(),
const QString &filter = QString());
parent
:父窗口的指针,默认为nullptr
,表示没有父窗口。caption
:对话框的标题,默认为空字符串,表示使用默认标题。directory
:打开文件对话框时的初始目录,默认为空字符串,表示使用当前目录。filter
:文件过滤器,默认为空字符串,表示不过滤任何文件类型。
QFileDialog::getOpenFileName
可以看出其参数与QFileDialog的构造函数基本相同,另外两个参数分别为:
-
selectedFilter
:指向一个QString
指针,用于存储用户选择的文件过滤器。如果不需要获取用户选择的文件过滤器,可以设置为nullptr
。 -
options
:文件对话框的选项,默认为Options()
,表示使用默认选项。
需要注意的是,该函数返回一个QString类型的返回值,表示用户选择的文件名。如果用户取消操作,则返回空字符串。
4、文字对话框——QFontDialog
explicit QFontDialog(const QFont &initial, QWidget *parent = nullptr);
const QFont &initial
:一个QFont
对象,表示对话框中要显示的初始字体。QWidget *parent = nullptr
:一个指向父窗口的指针,默认为nullptr
,表示没有父窗口。
QFontDialog::getFont(&bl)
QFontDialog::getFont(&bl)
是一个用于获取用户选择的字体的方法。它返回一个布尔值,表示用户是否成功选择了字体。如果用户成功选择了字体,该方法将返回 true
,并将所选字体存储在参数 bl
中。
5、消息对话框——QMessageBox
-
parent
:父窗口指针,用于设置对话框的位置和大小。 -
title
:对话框的标题。 -
text
:对话框中要显示的问题文本。 -
button0Text
:第一个按钮的文本。 -
button1Text
:第二个按钮的文本(可选)。 -
button2Text
:第三个按钮的文本(可选)。 -
defaultButtonNumber
:默认选中的按钮编号,从0开始计数。 -
escapeButtonNumber
:按下Esc键时触发的按钮编号,如果为-1则不响应Esc键。
该函数返回用户选择的按钮编号,其中0表示第一个按钮,1表示第二个按钮,以此类推。如果没有指定按钮文本,则使用空字符串作为默认值。
-
parent:父窗口指针,用于设置对话框的位置和大小。
-
title:对话框的标题。
-
text:对话框中要显示的问题/警告/提示/错误文本。
-
buttons:可选参数,指定对话框中可用的按钮类型,默认为Yes | No(即包含“是”和“否”两个按钮)。
-
buttons:可选参数,指定对话框中可用的按钮类型,默认为 Ok(即包含 "OK" 按钮)。
-
defaultButton:可选参数,指定默认选中的按钮,默认为NoButton(即不选中任何按钮)。
函数返回一个StandardButton枚举值,表示用户选择的按钮类型。