嵌入式Qt 选择字体对话框QFontDialog-进度对话框 QProgressDialog-打印对话框QPrintDialog

本文主要是介绍嵌入式Qt 选择字体对话框QFontDialog-进度对话框 QProgressDialog-打印对话框QPrintDialog,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一.字体对话框

 字体对话框使用方式:

//构造字体对话框对象 并指定父组件
QFontDialog dlg(this);//设置字体对话框的相关属性
dlg.setWindowTitle("Font Editor");//标题
dlg.setCurrentFont(
QFont("Courier New", 10, QFont::Bold)//设置初始字体,大小为10 粗体
);
if(dlg.exec() == QFontDialog::Accepted)
{
qDebug() << dlg.selectedFont();
}

 二.进度对话框

进度对话框的使用:

//构造进度对话框 并指定父窗口
QProgressDialog dlg(this)//设置进度对话框的相关属性
dlg.setWindowTitle("Updating...");//标题
dlg.setLabelText("Downloading from server...");//提示性字符串信息
dlg.setMinimum(0);//设置最小进度值
dlg.setMaximum(1000);//设置最小进度值dlg.exec();

 三.打印对话框

打印对话框类的使用:

//构造进度对话框 并指定父窗口
QProgressDialog dlg(this)//设置进度对话框的相关属性
dlg.setWindowTitle("Updating...");//标题
dlg.setLabelText("Downloading from server...");//提示性字符串信息
dlg.setMinimum(0);//设置最小进度值
dlg.setMaximum(1000);//设置最小进度值dlg.exec();

 四.对话框代码实现

main.cpp:

#include <QtGui/QApplication>
#include "Widget.h"int main(int argc, char *argv[])
{QApplication a(argc, argv);Widget w;w.show();return a.exec();
}

Widget.h:

#ifndef _WIDGET_H_
#define _WIDGET_H_#include <QtGui/QWidget>
#include <QPushButton>class Widget : public QWidget
{Q_OBJECT
private:QPushButton FontDialogBtn;QPushButton ProgressDialogBtn;QPushButton PrintDialogBtn;
private slots:void FontDialogBtn_Clicked();void PrintDialogBtn_Clicked();void ProgressDialogBtn_Clicked();
public:Widget(QWidget *parent = 0);~Widget();
};#endif

Widget.cpp:

#include "Widget.h"
#include <QDebug>
#include <QPrinter>
#include <QTextDocument>
#include <QPrintDialog>
#include <QProgressDialog>
#include <QFontDialog>Widget::Widget(QWidget *parent) : QWidget(parent),FontDialogBtn(this), ProgressDialogBtn(this), PrintDialogBtn(this)
{FontDialogBtn.setText("Font Dialog");FontDialogBtn.move(20, 20);FontDialogBtn.resize(160, 30);ProgressDialogBtn.setText("Progress Dialog");ProgressDialogBtn.move(20, 70);ProgressDialogBtn.resize(160, 30);PrintDialogBtn.setText("Print Dialog");PrintDialogBtn.move(20, 120);PrintDialogBtn.resize(160, 30);resize(200, 170);setFixedSize(200, 170);connect(&FontDialogBtn, SIGNAL(clicked()), this, SLOT(FontDialogBtn_Clicked()));connect(&ProgressDialogBtn, SIGNAL(clicked()), this, SLOT(ProgressDialogBtn_Clicked()));connect(&PrintDialogBtn, SIGNAL(clicked()), this, SLOT(PrintDialogBtn_Clicked()));
}void Widget::FontDialogBtn_Clicked()
{QFontDialog dlg(this);dlg.setWindowTitle("Font Dialog Test");dlg.setCurrentFont(QFont("Courier New", 10, QFont::Bold));if( dlg.exec() == QFontDialog::Accepted ){qDebug() << dlg.selectedFont();}
}void Widget::ProgressDialogBtn_Clicked()
{QProgressDialog dlg(this);dlg.setWindowTitle("Updating...");dlg.setLabelText("Downloading update from server...");dlg.setMinimum(0);dlg.setMaximum(100);dlg.setValue(35);// create a new threaddlg.exec();
}void Widget::PrintDialogBtn_Clicked()
{QPrintDialog dlg(this);dlg.setWindowTitle("Print Dialog Test");if( dlg.exec() == QPrintDialog::Accepted ){QPrinter* p = dlg.printer();QTextDocument td;//td.setPlainText("Printer object test!");td.setHtml("<h1>Print html object test</hl>");p->setOutputFileName("D:\\test.xps");td.print(p);}
}Widget::~Widget()
{}

这篇关于嵌入式Qt 选择字体对话框QFontDialog-进度对话框 QProgressDialog-打印对话框QPrintDialog的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/796423

相关文章

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字

使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)

《使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)》字体设计和矢量图形处理是编程中一个有趣且实用的领域,通过Python的matplotlib库,我们可以轻松将字体轮廓... 目录背景知识字体轮廓的表示实现步骤1. 安装依赖库2. 准备数据3. 解析路径指令4. 绘制图形关键

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

Qt之QMessageBox的具体使用

《Qt之QMessageBox的具体使用》本文介绍Qt中QMessageBox类的使用,用于弹出提示、警告、错误等模态对话框,具有一定的参考价值,感兴趣的可以了解一下... 目录1.引言2.简单介绍3.常见函数4.按钮类型(QMessage::StandardButton)5.分步骤实现弹窗6.总结1.引言

Qt中Qfile类的使用

《Qt中Qfile类的使用》很多应用程序都具备操作文件的能力,包括对文件进行写入和读取,创建和删除文件,本文主要介绍了Qt中Qfile类的使用,具有一定的参考价值,感兴趣的可以了解一下... 目录1.引言2.QFile文件操作3.演示示例3.1实验一3.2实验二【演示 QFile 读写二进制文件的过程】4.

exfat和ntfs哪个好? U盘格式化选择NTFS与exFAT的详细区别对比

《exfat和ntfs哪个好?U盘格式化选择NTFS与exFAT的详细区别对比》exFAT和NTFS是两种常见的文件系统,它们各自具有独特的优势和适用场景,以下是关于exFAT和NTFS的详细对比... 无论你是刚入手了内置 SSD 还是便携式移动硬盘或 U 盘,都需要先将它格式化成电脑或设备能够识别的「文

嵌入式Linux之使用设备树驱动GPIO的实现方式

《嵌入式Linux之使用设备树驱动GPIO的实现方式》:本文主要介绍嵌入式Linux之使用设备树驱动GPIO的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、设备树配置1.1 添加 pinctrl 节点1.2 添加 LED 设备节点二、编写驱动程序2.1

嵌入式Linux驱动中的异步通知机制详解

《嵌入式Linux驱动中的异步通知机制详解》:本文主要介绍嵌入式Linux驱动中的异步通知机制,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、异步通知的核心概念1. 什么是异步通知2. 异步通知的关键组件二、异步通知的实现原理三、代码示例分析1. 设备结构

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

C++如何通过Qt反射机制实现数据类序列化

《C++如何通过Qt反射机制实现数据类序列化》在C++工程中经常需要使用数据类,并对数据类进行存储、打印、调试等操作,所以本文就来聊聊C++如何通过Qt反射机制实现数据类序列化吧... 目录设计预期设计思路代码实现使用方法在 C++ 工程中经常需要使用数据类,并对数据类进行存储、打印、调试等操作。由于数据类