DtkWidget
DTK Widget module
载入中...
搜索中...
未找到
Dtk::Widget::DDialog类 参考

DDialog 旨在提供简要的讯问式对话框的快速实现。提供了包含标题,对话框内容,默认图标,用以添加按钮的布局和一个可以自由添加内容的内容布局。 更多...

类 Dtk::Widget::DDialog 继承关系图:
Dtk::Widget::DAbstractDialog Dtk::Widget::ChangeDDialog Dtk::Widget::DAboutDialog Dtk::Widget::DFeatureDisplayDialog Dtk::Widget::DInputDialog Dtk::Widget::DPrintPreviewDialog

Public 类型

enum  ButtonType { ButtonNormal , ButtonWarning , ButtonRecommend }
 表示按钮类型
 
- Public 类型 继承自 Dtk::Widget::DAbstractDialog
enum  DisplayPosition { Center , TopRight }
 对话框显示位置 更多...
 
enum  DisplayPostion { DisplayCenter = Center , DisplayTopRight = TopRight }
 

Public 槽

int addButton (const QString &text, bool isDefault=false, ButtonType type=ButtonNormal)
 向对话框添加按钮
 
int addButtons (const QStringList &text)
 向对话框添加按钮
 
void insertButton (int index, const QString &text, bool isDefault=false, ButtonType type=ButtonNormal)
 向对话框插入按钮
 
void insertButton (int index, QAbstractButton *button, bool isDefault=false)
 向对话框插入按钮
 
void insertButtons (int index, const QStringList &text)
 向对话框插入按钮
 
void removeButton (int index)
 从对话框移除按钮
 
void removeButton (QAbstractButton *button)
 从对话框移除按钮
 
void removeButtonByText (const QString &text)
 从对话框移除按钮
 
void clearButtons ()
 清除所有按钮
 
bool setDefaultButton (int index)
 设置默认按钮
 
bool setDefaultButton (const QString &str)
 设置默认按钮
 
void setDefaultButton (QAbstractButton *button)
 设置默认按钮
 
void addContent (QWidget *widget, Qt::Alignment alignment={})
 添加控件到对话框内容布局.
 
void insertContent (int index, QWidget *widget, Qt::Alignment alignment={})
 在对话框内容布局指定位置插入控件.
 
void removeContent (QWidget *widget, bool isDelete=true)
 从对话框内容布局中移除指定控件
 
void clearContents (bool isDelete=true)
 清空对话框内容布局中的所有内容.
 
void setSpacing (int spacing)
 设置对话框内容间隔
 
void addSpacing (int spacing)
 追加对话框内容间隔.
 
void insertSpacing (int index, int spacing)
 插入对话框内容间隔
 
void clearSpacing ()
 清除内容间隔
 
void setButtonText (int index, const QString &text)
 设置按钮文字
 
void setButtonIcon (int index, const QIcon &icon)
 设置按钮图标
 
void setTitle (const QString &title)
 设置对话框标题
 
void setWordWrapTitle (bool wordWrap)
 设定标题Label内容是否可截断换行
 
void setMessage (const QString &message)
 设置对话框消息内容
 
void setWordWrapMessage (bool wordWrap)
 设置对话框消息内容
 
void setIcon (const QIcon &icon)
 设置对话框图标
 
void setTextFormat (Qt::TextFormat textFormat)
 设置文字格式
 
void setOnButtonClickedClose (bool onButtonClickedClose)
 设置是否在点击按钮后关闭对话框
 
void setCloseButtonVisible (bool closeButtonVisible)
 设置关闭按钮的可见性
 
int exec () Q_DECL_OVERRIDE
 以模态框形式显示当前对话框
 
- Public 槽 继承自 Dtk::Widget::DAbstractDialog
void moveToCenter ()
 将对话框移动至屏幕中央或其父控件的中央
 
void moveToTopRight ()
 将对话框移动至屏幕右上角或其父控件的右上角
 
void moveToCenterByRect (const QRect &rect)
 移动对话框到给定rect区域的中央。rect是移动对话框要参照的QRect区域
 
void moveToTopRightByRect (const QRect &rect)
 移动对话框到给定rect区域的右上角。rect是移动所需要参照的QRect位置。
 
void setDisplayPosition (DisplayPosition displayPosition)
 设置对话框显示位置
 

信号

void aboutToClose ()
 
void closed ()
 
void buttonClicked (int index, const QString &text)
 
void titleChanged (QString title)
 
void messageChanged (QString massage)
 
void textFormatChanged (Qt::TextFormat textFormat)
 
void sizeChanged (QSize size)
 
void visibleChanged (bool visible)
 
- 信号 继承自 Dtk::Widget::DAbstractDialog
void sizeChanged (QSize size)
 窗口大小发生改变
 

Public 成员函数

 DDialog (QWidget *parent=nullptr)
 构造一个 DDialog 对话框
 
 DDialog (const QString &title, const QString &message, QWidget *parent=0)
 构造一个 DDialog 对话框
 
int getButtonIndexByText (const QString &text) const
 通过按钮文字获取按钮下标
 
int buttonCount () const
 获得对话框包含的按钮数量
 
int contentCount () const
 获得对话框包含的所有内容控件的数量
 
QList< QAbstractButton * > getButtons () const
 获得对话框的按钮列表
 
QList< QWidget * > getContents () const
 获得对话框包含的所有内容控件列表
 
QAbstractButton * getButton (int index) const
 获得指定下标所对应的按钮
 
QWidget * getContent (int index) const
 获取指定下标对应的内容控件
 
QString title () const
 返回对话框标题
 
QString message () const
 返回对话框消息文本
 
QIcon icon () const
 返回对话框图标
 
Qt::TextFormat textFormat () const
 返回对话框的文本格式
 
bool onButtonClickedClose () const
 检查在点击任何按钮后是否都会关闭对话框
 
void setContentLayoutContentsMargins (const QMargins &margins)
 设定内容布局的内容 margin
 
QMargins contentLayoutContentsMargins () const
 返回内容布局的边距.
 
bool closeButtonVisible () const
 关闭按钮的可见属性.
 
- Public 成员函数 继承自 Dtk::Widget::DAbstractDialog
 DAbstractDialog (QWidget *parent=nullptr)
 构造一个DAbstractDialog实例
 
 DAbstractDialog (bool blurIfPossible, QWidget *parent=nullptr)
 构造一个 DAbstractDialog 实例
 
DisplayPosition displayPosition () const
 
void move (const QPoint &pos)
 将窗口移动到指定坐标
 
void move (int x, int y)
 将窗口移动到指定坐标
 
void setGeometry (const QRect &rect)
 构造一个矩形
 
void setGeometry (int x, int y, int width, int height)
 

Protected 成员函数

 DDialog (DDialogPrivate &dd, QWidget *parent=0)
 
void showEvent (QShowEvent *event) Q_DECL_OVERRIDE
 
void hideEvent (QHideEvent *event) Q_DECL_OVERRIDE
 
void closeEvent (QCloseEvent *event) override
 
void childEvent (QChildEvent *event) Q_DECL_OVERRIDE
 
void resizeEvent (QResizeEvent *event) override
 
void keyPressEvent (QKeyEvent *event) override
 
bool eventFilter (QObject *watched, QEvent *event) override
 
void changeEvent (QEvent *event) override
 
- Protected 成员函数 继承自 Dtk::Widget::DAbstractDialog
void mouseMoveEvent (QMouseEvent *event) Q_DECL_OVERRIDE
 对话框的鼠标移动事件
 
void mousePressEvent (QMouseEvent *event) Q_DECL_OVERRIDE
 对话框的鼠标点击事件
 
void mouseReleaseEvent (QMouseEvent *event) Q_DECL_OVERRIDE
 对话框的鼠标释放事件
 
void resizeEvent (QResizeEvent *event) Q_DECL_OVERRIDE
 窗口大小改变事件
 
void showEvent (QShowEvent *event) override
 窗口显示事件,如果收到过鼠标移动事件不再使用自动布局
 
 DAbstractDialog (DAbstractDialogPrivate &dd, QWidget *parent=nullptr)
 

属性

QString title
 对话框标题属性
 
QString message
 对话框消息属性
 
QIcon icon
 对话框图标属性
 
Qt::TextFormat textFormat
 对话框的文本格式属性
 
bool onButtonClickedClose
 标志是否在点击按钮后关闭对话框的属性
 
bool closeButtonVisible
 关闭按钮的可见属性
 
- 属性 继承自 Dtk::Widget::DAbstractDialog
DisplayPosition displayPosition
 获取对话框显示位置
 

详细描述

DDialog 旨在提供简要的讯问式对话框的快速实现。提供了包含标题,对话框内容,默认图标,用以添加按钮的布局和一个可以自由添加内容的内容布局。

DDialog概述

DDialog 旨在提供简要的讯问式对话框的快速实现。提供了包含标题,对话框内容,默认图标,用以添加按钮的布局和一个可以自由添加内容的内容布局。 可以使用 addButton() , insertButton(), setDefaultButton() 等函数方便的给对话框插入按钮并进行管理,可以使用 addContent(), insertContent() 等函数操作内容布局。 此外, DDialog 还提供了一些额外的函数以供实现一些常见的需求。如,可以通过设置 setOnButtonClickedClose() 为 true 来使得用户在点击任何对话框上的按钮后关闭对话框。 当你需要快速构建较为简单结构的对话框,你应当使用 DDialog ,对于较为复杂的需求,请参阅 DAbstractDialog 或 QDialog 相关文档。

通过简单的示例来快速了解DDialog:

CMakeLists.txt

首先配置CMakeLists.txt文件:

cmake_minimum_required(VERSION 3.1.0) # 指定cmake最低版本
project(example1 VERSION 1.0.0 LANGUAGES CXX) # 指定项目名称, 版本, 语言 cxx就是c++
set(CMAKE_CXX_STANDARD 11) # 指定c++标准
set(CMAKE_CXX_STANDARD_REQUIRED ON) # 指定c++标准要求,至少为11以上
# set(target example1) # 指定目标名称
set(CMAKE_AUTOMOC ON) # support qt moc # 支持qt moc
set(CMAKE_AUTORCC ON) # support qt resource file # 支持qt资源文件
set(CMAKE_AUTOUIC ON) # support qt ui file # 支持qt ui文件(非必须)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON) # suppot clangd 支持clangd
if (CMAKE_VERSION VERSION_LESS "3.7.0") # 如果cmake版本小于3.7.0
set(CMAKE_INCLUDE_CURRENT_DIR ON) # 设置包含当前目录
endif()
find_package(Qt5 COMPONENTS Widgets Core REQUIRED) # 寻找Qt5组件Widgets
find_package(Qt5 COMPONENTS Gui REQUIRED) # 寻找Qt5组件Gui
find_package(Dtk COMPONENTS Widget REQUIRED) # 寻找Dtk组件Widget
find_package(Dtk COMPONENTS Core REQUIRED) # 寻找Dtk组件Core
find_package(Dtk COMPONENTS Gui REQUIRED) # 寻找Dtk组件Gui
add_executable(example1 # 添加可执行文件
main.cpp
)
target_link_libraries(example1 PRIVATE Qt5::Widgets Qt5::Gui Qt5::Core dtkgui dtkcore dtkwidget) # 链接库

main.cpp

在main.cpp中实现示例代码:

1.导包、设置命名空间

#include <DApplication> //导入DApplication应用依赖包
#include <DMainWindow> //导入DMainWindow主窗口依赖包
#include <DPushButton> //导入DPushButton按钮依赖包
#include <DDialog> //导入DDialog对话框依赖包
DWIDGET_USE_NAMESPACE //使用DWidget命名空间

2.主函数和应用

如下我们写一个主函数,设置一个应用

int main(int argc, char *argv[]){
DApplication app(argc, argv); //设置一个应用
//功能实现部分
return app.exec(); //运行应用
}
DApplication 是 DTK 中用于替换 QCoreApplication 相关功能实现的类.
Definition dapplication.h:33

3.实现对话框

对话框分为模态对话框和非模态对话框:
模态对话框是在对话框关闭之前,不能再与同一个应用程序的其他窗口进行交互。
非模态对话框是可以与同一程序中的窗口交互的。

设置一个主窗口,在主窗口上设置一个按钮,实现通过点击按钮弹出对话框的功能

3.1 模态对话框实现

显示一个对话框一般有两种方式,一种是使用exec()方法,它总是以模态来显示对话框;另一种是使用show()方法,它使得对话框既可以模态显示,也可以非模态显示,决定它是模态还是非模态的是对话框的modal属性。

int main(int argc, char *argv[]){
DApplication app(argc, argv); //设置一个应用
DMainWindow dmw; //设置一个主窗口
DPushButton *btn = new DPushButton("按钮",&dmw); //设置一个按钮,将按钮的父亲设置为主窗口
QObject::connect(btn, &DPushButton::clicked, [](){ //建立按钮点击的连接,按钮被按下时执行lambda函数,
DDialog *dialog = new DDialog; //新建一个指向对话框的指针
dialog->setAttribute(Qt::WidgetAttribute::WA_DeleteOnClose); //将指针设置为窗口关闭即释放
dialog->exec(); //显示对话框
});
dmw.show(); //显示主窗口
return app.exec(); //运行应用
}
DDialog 旨在提供简要的讯问式对话框的快速实现。提供了包含标题,对话框内容,默认图标,用以添加按钮的布局和一个可以自由添加内容的内容布局。
Definition ddialog.h:22
int exec() Q_DECL_OVERRIDE
以模态框形式显示当前对话框
Definition ddialog.cpp:1107
The DMainWindow class provides a main application window.
Definition dmainwindow.h:20
int main(int argc, char *argv[]){
DApplication app(argc, argv); //设置一个应用
DMainWindow dmw; //设置一个主窗口
DPushButton *btn = new DPushButton("按钮",&dmw); //设置一个按钮,将按钮的父亲设置为主窗口
QObject::connect(btn, &DPushButton::clicked, [](){ //建立按钮点击的连接,按钮被按下时执行lambda函数,
DDialog *dialog = new DDialog; //新建一个指向对话框的指针
dialog->setAttribute(Qt::WidgetAttribute::WA_DeleteOnClose); //将指针设置为窗口关闭即释放
dialog->setModal(true); //设置为模态对话框
dialog->show(); //显示对话框
});
dmw.show(); //显示主窗口
return app.exec(); //运行应用
}

3.2 非模态对话框实现

int main(int argc, char *argv[]){
DApplication app(argc, argv); //设置一个应用
DMainWindow dmw; //设置一个主窗口
DPushButton *btn = new DPushButton("按钮",&dmw); //设置一个按钮,将按钮的父亲设置为主窗口
QObject::connect(btn, &DPushButton::clicked, [](){ //建立按钮点击的连接,按钮被按下时执行lambda函数,
DDialog *dialog = new DDialog; //新建一个指向对话框的指针
dialog->setAttribute(Qt::WidgetAttribute::WA_DeleteOnClose); //将指针设置为窗口关闭即释放
dialog->show(); //显示对话框
});
dmw.show(); //显示主窗口
return app.exec(); //运行应用
}

4. 对话框样式和设置

通过addContent()添加对话框内容,通过addButton()给对话框添加按钮:

dialog->addContent(new DPasswordEdit); //给对话框添加内容,此处添加一个密码框的匿名对象
dialog->addButton("取消"); //添加一个取消按钮
dialog->addButton("授权", false, DDialog::ButtonRecommend); //添加一个授权按钮并设置样式为 “推荐按钮” 的样式
void addContent(QWidget *widget, Qt::Alignment alignment={})
添加控件到对话框内容布局.
Definition ddialog.cpp:791
int addButton(const QString &text, bool isDefault=false, ButtonType type=ButtonNormal)
向对话框添加按钮
Definition ddialog.cpp:536
DPasswordEdit提供了一个让用户输入的密码框.
Definition dpasswordedit.h:14

对话框效果如下:

DFileDialog

#include <DApplication>
#include <DMainWindow>
#include <DPushButton>
#include <DFileDialog>//导入文件对话框依赖包
DWIDGET_USE_NAMESPACE //使用DWidget命名空间
int main(int argc, char *argv[]){
DApplication app(argc, argv); //设置一个应用
DMainWindow dmw; //设置一个主窗口
DPushButton *btn = new DPushButton("按钮",&dmw); //设置一个按钮,将按钮的父亲设置为主窗口
QObject::connect(btn, &DPushButton::clicked, [](){ //建立按钮点击的连接,按钮被按下时执行lambda函数,
DFileDialog *dialog = new DFileDialog; //新建一个指向对话框的指针
dialog->setAttribute(Qt::WidgetAttribute::WA_DeleteOnClose); //将指针设置为窗口关闭即释放
dialog->exec(); //显示对话框
});
dmw.show(); //显示主窗口
return app.exec(); //运行应用
}
DFileDialog 类提供了一个可供用户选择文件或目录的对话框
Definition dfiledialog.h:16

运行后点击按钮显示文件对话框,如下图所示:

DMessageManager

DTK提供了更为丰富和美观的消息提示,包含可自动消失的信息和点击后消失的信息,下面通过一个示例来了解。

设置一个主窗口,在主窗口上设置两个按钮,一个按钮点击以后会弹出可自动消失的提示消息,另一个按钮点击以后会弹出点击消失的提示信息。示例代码如下:

#include <DApplication>
#include <DMainWindow>
#include <DPushButton>
#include <DMessageManager>
DWIDGET_USE_NAMESPACE //使用DWidget命名空间
int main(int argc, char *argv[]){
DApplication app(argc, argv); //设置一个应用
DMainWindow dmw; //设置一个主窗口
dmw.resize(400,300); //重新设置主窗口大小
DPushButton *btn1 = new DPushButton("自动消失信息",&dmw); //新建一个按钮
btn1->move(0,50); //移动按钮
DPushButton *btn2 = new DPushButton("点击消失信息",&dmw);
btn2->move(0,100);
QObject::connect(btn1, &DPushButton::clicked, &dmw, [&dmw](){ //建立第一个按钮的连接
//点击按钮后发出消息,消息的父亲设为主窗口,使用standardIcon()设置样式并添加提示信息
DMessageManager::instance()->sendMessage(&dmw, QApplication::style()->standardIcon(QStyle::SP_MessageBoxWarning), "这是自动消失的信息");
});
QObject::connect(btn2, &DPushButton::clicked, [&dmw](){ //建立第二个按钮的连接
DFloatingMessage *message = new DFloatingMessage(DFloatingMessage::ResidentType); //新建一个指向新消息的指针,指定消息类型为ResidentType
message->setIcon(QApplication::style()->standardIcon(QStyle::SP_MessageBoxWarning)); //使用standardIcon()设置样式
message->setMessage("这是不会自动消失的提示消息"); //设置提示信息
message->setWidget(new DPushButton("确认")); //在消息对话框上添加一个新按钮,并设置按钮信息
DMessageManager::instance()->sendMessage(&dmw, message); //发送信息,父亲设为主窗口
});
dmw.show(); //显示主窗口
return app.exec(); //运行应用
}
QString message
对话框消息属性
Definition ddialog.h:26
一个浮动消息的类.
Definition dfloatingmessage.h:18

运行后效果如下图所示,主窗口效果图:

点击第一个按钮(自动消失信息)以后效果图:

点击第二个按钮(点击消失按钮)以后效果图:

构造及析构函数说明

◆ DDialog() [1/2]

Dtk::Widget::DDialog::DDialog ( QWidget *  parent = nullptr)
explicit

构造一个 DDialog 对话框

参数
parent父控件指针

◆ DDialog() [2/2]

Dtk::Widget::DDialog::DDialog ( const QString &  title,
const QString &  message,
QWidget *  parent = 0 
)
explicit

构造一个 DDialog 对话框

参数
title标题
message对话框消息
parent父控件指针

成员函数说明

◆ addButton

int Dtk::Widget::DDialog::addButton ( const QString &  text,
bool  isDefault = false,
ButtonType  type = ButtonNormal 
)
slot

向对话框添加按钮

参数
text按钮文字
isDefault是否默认按钮
type按钮类型
返回
所添加的按钮的下标

◆ addButtons

int Dtk::Widget::DDialog::addButtons ( const QStringList &  text)
slot

向对话框添加按钮

参数
text按钮文字
返回
所添加的按钮的下标

◆ addContent

void Dtk::Widget::DDialog::addContent ( QWidget *  widget,
Qt::Alignment  alignment = {} 
)
slot

添加控件到对话框内容布局.

参数
widget待添加的控件
alignment对齐方式

◆ addSpacing

void Dtk::Widget::DDialog::addSpacing ( int  spacing)
slot

追加对话框内容间隔.

在对话框的内容布局后追加一个非弹性,大小为 spacing 的间隔(一个 QSpacerItem )

参见
QBoxLayout::addSpacing

◆ clearContents

void Dtk::Widget::DDialog::clearContents ( bool  isDelete = true)
slot

清空对话框内容布局中的所有内容.

参数
isDelete是否删除

◆ clearSpacing

void Dtk::Widget::DDialog::clearSpacing ( )
slot

清除内容间隔

清除对话框内容布局中包含的所有 QSpacerItem

◆ closeButtonVisible()

bool Dtk::Widget::DDialog::closeButtonVisible ( ) const

关闭按钮的可见属性.

返回
返回关闭按钮是否可见的bool值

◆ contentLayoutContentsMargins()

QMargins Dtk::Widget::DDialog::contentLayoutContentsMargins ( ) const

返回内容布局的边距.

返回
返回内容布局的内容margin

◆ exec

int Dtk::Widget::DDialog::exec ( )
slot

以模态框形式显示当前对话框

以 {QDialog::Modal Dialogs}{模态框} 形式显示当前对话框,将会阻塞直到用户关闭对话框。 onButtonClickedClose()为 true 时返回当前点击按钮的Index,否则返回 结果。

返回
返回模态对话框处理的结果
参见
QDialog::exec()

◆ getButton()

QAbstractButton * Dtk::Widget::DDialog::getButton ( int  index) const

获得指定下标所对应的按钮

参数
index按钮下标
返回
返回指定下标所对应的按钮

◆ getButtonIndexByText()

int Dtk::Widget::DDialog::getButtonIndexByText ( const QString &  text) const

通过按钮文字获取按钮下标

参数
text按钮文字
返回
按钮下标

◆ getContent()

QWidget * Dtk::Widget::DDialog::getContent ( int  index) const

获取指定下标对应的内容控件

参数
index控件下标
返回
返回对应的内容控件

◆ hideEvent()

void Dtk::Widget::DDialog::hideEvent ( QHideEvent *  event)
protected

\reimp

◆ icon()

QIcon Dtk::Widget::DDialog::icon ( ) const

返回对话框图标

返回
返回对话框的icon

◆ insertButton [1/2]

void Dtk::Widget::DDialog::insertButton ( int  index,
const QString &  text,
bool  isDefault = false,
ButtonType  type = ButtonNormal 
)
slot

向对话框插入按钮

参数
index下标
text按钮文字
isDefault是否是默认按钮
type按钮类型

◆ insertButton [2/2]

void Dtk::Widget::DDialog::insertButton ( int  index,
QAbstractButton *  button,
bool  isDefault = false 
)
slot

向对话框插入按钮

参数
index下标
button待插入的按钮
isDefault是否是默认按钮

◆ insertButtons

void Dtk::Widget::DDialog::insertButtons ( int  index,
const QStringList &  text 
)
slot

向对话框插入按钮

参数
index下标
text按钮文字

◆ insertContent

void Dtk::Widget::DDialog::insertContent ( int  index,
QWidget *  widget,
Qt::Alignment  alignment = {} 
)
slot

在对话框内容布局指定位置插入控件.

参数
index待插入的位置下标
widget待插入的控件
alignment对齐方式

◆ insertSpacing

void Dtk::Widget::DDialog::insertSpacing ( int  index,
int  spacing 
)
slot

插入对话框内容间隔

在对话框的内容布局的指定位置插入一个非弹性,大小为 spacing 的间隔(一个 QSpacerItem )。

参数
index插入间隔的索引位置
spacing插入间隔的大小

◆ message()

QString Dtk::Widget::DDialog::message ( ) const

返回对话框消息文本

返回
返回对话框的显示信息

◆ onButtonClickedClose()

bool Dtk::Widget::DDialog::onButtonClickedClose ( ) const

检查在点击任何按钮后是否都会关闭对话框

返回
关闭对话框返回 true , 否则返回 false

◆ removeButton [1/2]

void Dtk::Widget::DDialog::removeButton ( int  index)
slot

从对话框移除按钮

参数
index待移除按钮的下标

◆ removeButton [2/2]

void Dtk::Widget::DDialog::removeButton ( QAbstractButton *  button)
slot

从对话框移除按钮

参数
button待移除的按钮

◆ removeButtonByText

void Dtk::Widget::DDialog::removeButtonByText ( const QString &  text)
slot

从对话框移除按钮

参数
text待移除按钮的文本内容

◆ removeContent

void Dtk::Widget::DDialog::removeContent ( QWidget *  widget,
bool  isDelete = true 
)
slot

从对话框内容布局中移除指定控件

参数
widget待移除的控件
isDelete是否执行删除

◆ setButtonIcon

void Dtk::Widget::DDialog::setButtonIcon ( int  index,
const QIcon &  icon 
)
slot

设置按钮图标

参数
index需要设置图标的按钮的下标
icon所需要设置的图标

◆ setButtonText

void Dtk::Widget::DDialog::setButtonText ( int  index,
const QString &  text 
)
slot

设置按钮文字

参数
index需要设置文字的按钮的下标
text所需要设置的文字

◆ setContentLayoutContentsMargins()

void Dtk::Widget::DDialog::setContentLayoutContentsMargins ( const QMargins &  margins)

设定内容布局的内容 margin

参数
margins具体的 margins

◆ setDefaultButton [1/3]

bool Dtk::Widget::DDialog::setDefaultButton ( const QString &  str)
slot

设置默认按钮

参数
str要设置的默认按钮的文本内容
参见
default

◆ setDefaultButton [2/3]

bool Dtk::Widget::DDialog::setDefaultButton ( int  index)
slot

设置默认按钮

参数
index要设置的默认按钮的下标
返回
设置成功返回 true,否则返回false

◆ setDefaultButton [3/3]

void Dtk::Widget::DDialog::setDefaultButton ( QAbstractButton *  button)
slot

设置默认按钮

参数
button要设置的默认按钮
参见
default

◆ setIcon

D_DECL_DEPRECATED void Dtk::Widget::DDialog::setIcon ( const QIcon &  icon)
slot

设置对话框图标

参数
icon对话框图标

为对话框设置图标,同时可以指定一个期望的图标大小。

参数
icon对话框图标
expectedSize期望大小

◆ setMessage

void Dtk::Widget::DDialog::setMessage ( const QString &  message)
slot

设置对话框消息内容

参数
message对话框消息

◆ setOnButtonClickedClose

void Dtk::Widget::DDialog::setOnButtonClickedClose ( bool  onButtonClickedClose)
slot

设置是否在点击按钮后关闭对话框

参数
onButtonClickedClose设置为 true 后,无论点击什么按钮,都会在点击后关闭对话框。

◆ setSpacing

void Dtk::Widget::DDialog::setSpacing ( int  spacing)
slot

设置对话框内容间隔

参数
spacing对话框的内容布局的间隔大小
参见
QBoxLayout::setSpacing

◆ setTextFormat

void Dtk::Widget::DDialog::setTextFormat ( Qt::TextFormat  textFormat)
slot

设置文字格式

参数
textFormat文字格式

◆ setTitle

void Dtk::Widget::DDialog::setTitle ( const QString &  title)
slot

设置对话框标题

参数
title对话框标题

◆ setWordWrapTitle

void Dtk::Widget::DDialog::setWordWrapTitle ( bool  wordWrap)
slot

设定标题Label内容是否可截断换行

参数
wordWraptrue可换行,false不可以换行

◆ showEvent()

void Dtk::Widget::DDialog::showEvent ( QShowEvent *  event)
protected

\reimp

◆ textFormat()

Qt::TextFormat Dtk::Widget::DDialog::textFormat ( ) const

返回对话框的文本格式

返回
返回设定的文本格式

◆ title()

QString Dtk::Widget::DDialog::title ( ) const

返回对话框标题

返回
返回对话框的标题内容

属性说明

◆ closeButtonVisible

bool Dtk::Widget::DDialog::closeButtonVisible
readwrite

关闭按钮的可见属性

参见
read方法 onButtonClickedClose
write方法 setCloseButtonVisible

◆ icon

QIcon Dtk::Widget::DDialog::icon
readwrite

对话框图标属性

参见
read方法 icon
write方法 setIcon

◆ message

QString Dtk::Widget::DDialog::message
readwrite

对话框消息属性

参见
read方法 message
write方法 setMessage

◆ onButtonClickedClose

bool Dtk::Widget::DDialog::onButtonClickedClose
readwrite

标志是否在点击按钮后关闭对话框的属性

参见
read方法 onButtonClickedClose
write方法 setOnButtonClickedClose

◆ textFormat

Qt::TextFormat Dtk::Widget::DDialog::textFormat
readwrite

对话框的文本格式属性

参见
read方法 textFormat
write方法 setTextFormat

◆ title

QString Dtk::Widget::DDialog::title
readwrite

对话框标题属性

参见
read方法 title
write方法 setTitle

该类的文档由以下文件生成: