62.QFontDialog

继承QDialog

主要处理文字信息的对话框

目录

1  构造函数

2  打开对话框

2.1  open(PYQT_SLOT)

2.2  exec()

3  最终选中字体 selectedFont()

4  当前字体

4.1  设置 setCurrentFont()

4.2  获取 currentFont()

5  选项控制

5.1  设置或取消选项 setOption(QFontDialog.FontDialogOption,bool)

5.2  批量设置选项 setOptions()

5.3  测试某个选项是否生效 testOption()

5.4  获取当前生效的选项 options()

6  信号

6.1  当前选择的字体改变时触发 currentFontChanged

6.2  最终选择字体后触发 fontSelected

7  静态方法 getFont()


1  构造函数

可以直接给一个父对象创建

也可以额外放一个QFont

2  打开对话框

2.1  open(PYQT_SLOT)

open括号内的参数是槽函数

如果我们在open中加入槽函数

我们在点击OK后会触发指定的槽函数

2.2  exec()

会返回一个整形数据

点OK返回1,点取消返回0,点右上角的叉也返回0

3  最终选中字体 selectedFont()

该方法会返回一个QFont

一般我们是配合槽函数使用的

弹出对话框后选择OK

4  当前字体

4.1  设置 setCurrentFont()

4.2  获取 currentFont()

会返回当前的QFont对象

我们如果要实时的获取还是要放在槽函数中

后面讲信号的时候会有一个字体改变的信号

5  选项控制

以上涉及到一个参数QFontDialog.FontDialogOption,它可以是以下的值

  • QFontDialog.NoButtons 不显示 确定 和 取消 按钮
  • QFontDialog.DontUseNativeDialog 不使用默认对话框
  • QFontDialog.ScalableFonts 显示可缩放字体
  • QFontDialog.NonScalableFonts 显示不可缩放字体
  • QFontDialog.MonospacedFonts 显示等宽字体
  • QFontDialog.ProportionalFonts 显示比例字体

5.1  设置或取消选项 setOption(QFontDialog.FontDialogOption,bool)

我们先设置不显示 确定 和 取消 按钮

之后我们再设置不使用默认对话框

我们先看一下原来的样子

经测试这个选项在windows中没有什么变化

其余四个选项都是对字体的列表进行操作,就不一个一个试了

如果第二个参数为False则不会生效

5.2  批量设置选项 setOptions()

5.3  测试某个选项是否生效 testOption()

我们测试是否取消两个按钮选项是否生效

5.4  获取当前生效的选项 options()

会返回一个FontDialogOptions对象

6  信号

6.1  当前选择的字体改变时触发 currentFontChanged

会传递一个字体对象

初始状态是这样的

我们现在选择它的下一个字体

点击OK后会再次触发该信号

6.2  最终选择字体后触发 fontSelected

会传递一个字体对象

运行后直接点击OK

7  静态方法 getFont()

静态方法不需要实例化

我不用创建对象,直接用

运行后直接弹出选择字体对话框,此时没有显示后面的窗口

我们直接点击OK

点击后窗口显示出来了

如果选中之后点击Cancel或右上角的叉就是False

我们在这个函数中加入其他参数以调整该对话框

  • 默认字体
  • 父控件
  • 对话框标题
  • 选项

这个例子中,默认字体是 华文彩云,父对象是 窗口,标题是 这是一个字体对话框,选项设为没有按钮

运行后窗口并没有出来

由于没有按钮,我们点击右上角的叉

这个时候窗口出来了

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Suyuoa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值