21-Qt 中的标准对话框(下)

1. 字体对话框

  • QT 中提供了预定义的字体对话框 QFontDialog 类

  • QFontDialog 类用于提供选择字体的对话框部件

在这里插入图片描述

  • 字体对话框的实用方式

    // 构造字体对话框对象
    QFontDialog dlg(parent);
    // 设置字体对话框的相关属性
    dlg.setWindowTitle("Font Editor");
    dlg.set("Courier Mew",10,QFont::Bold);  // 初始字体
    
    if( dlg.exec() == QFontDialog::Accepted)
    {
    	qDebug()<<dlg.selecteFont();
    }
    
  • QFontDialog中的实用函数

    QFontDialog::getFont
    
  • QFontDialog 代码示例地址

2. 进度对话框

  • QT 中提供了预定义的进度对话框 QProcessDialog 类

  • QProgressDialog 用于显示进度消息

  • QProgressDialog 类用于需要用户等待场合

在这里插入图片描述

  • 进度对话框的使用方式

    // 构造进度对话框对象
    QProgressDialog dlg(parent);
    // 设置进度对话框的相关属性
    dlg.setWindowTitle("Updating ...");
    dlg.setLabelText("Downloading from server ...");
    dlg.setMinimum(0);  // 设置最小进度值
    dlg.setMAximum(100);  // 设置最大进度值
    
    dlg.exec();
    
  • QProgressDialog 代码示例地址

3. 打印对话框

  • QT 中提供了预定义的打印对话框 QPrintDialog 类

  • QPrintDialog 用于设置打印相关参数信息

在这里插入图片描述

  • 打印对话框的使用方式

    // 构造打印对话框对象
    QPrintDialog dlg(parent);
    // 设置带你对话框的相关属性
    dlg.setWindowTitle("Print Dialog");
    
    if( dlg.exec() == QPrintDialog::Accepted )
    {
    	QPrint *p = dlg.printer();
    	// use printer object to print data
    }
    
  • QT 中的 QPrinter 类是打印设备及其参数的封装

  • QPrinter 类封装了系统中打印设备的驱动接口

  • QPrinter 以相同方式使用系统中的不同打印设备

  • QPrintDialog 代码示例地址

  • 注意点:

    在用Qt做记事本的时候出现:QPrinter:no such file or directory 的错误,解决方法如下:
    
    在.pro文件中添加下面一行代码:
    QT+= printsupport
    就可以了,头文件不需要改。这是因为Qt 5中将所有打印的相关类都放到了Qt Print Support模块造成的。
    

4. 总结

  • QT 中标准对话框的设计模式

    GUI 界面部件产生数据对象
    业务逻辑中的其它对象使用数据对象
    GUI 界面与业务逻辑通过数据对象连接
    
发布了61 篇原创文章 · 获赞 31 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/qq_40794602/article/details/105633987