PyQt5-如何创建字体对话框(QFontDialog)

2025-10-27 09:37:37

1、①导入模块,

②创建应用程序对象,

③顶层窗口对象;

PyQt5-如何创建字体对话框(QFontDialog)

2、创建必要的子控件:

①按钮控件,用于打开一个字体对话框;

②一个文本输入框。

③监听主窗口缩放,设置文本框与主窗口大小保持比例,设置按钮与文本框位置相对不变。

PyQt5-如何创建字体对话框(QFontDialog)

1、①QFontDialog类继承自QDialog类,故QDialog类的功能可被QFontDialog对象使用;

②QFontDialog控件也是个独立的窗口,但需要绑定父控件;

③为了与其他代码区分开,将有字体的关代码封装为一个函数zt(),并在setup_ui()内调用。

④创建没有QFont参数的对话框: QFontDialog(self);

⑤将按钮‘设置字体’的clicked信号连接QFontDialog的父类功能 open(函数)

PyQt5-如何创建字体对话框(QFontDialog)

2、获取当前的字体设置(当用open()函数显示对话框时):

①使用open()展示对话框时,还可以给open()函数传递一个参数 PYQT_SLOT,

②此参数是个槽函数,在关闭对话框时用selectedFont() 返回QFont对象。

③通过返回的QFont对象,获取当前选择的字体的数字。

PyQt5-如何创建字体对话框(QFontDialog)

3、设置默认字体的默认显示:

①首先要实例一个QFont对象:

②通过QFont对象,设置对话框显示的默认值。

③将对象作为一个QFontDialog(QFont, parent)

例如图例:更改上面的代码,设置默认的显示;

PyQt5-如何创建字体对话框(QFontDialog)

4、当用exec()函数显示对话框时,获取当前的字体设置:

①只要exec()的返回值是 1;也就是按了对话框的ok键关闭了对话框,selectedFont() 就能返回QFont对象。

② 通过返回的QFont对象,获取当前选择的字体的数字。

图例中:修改代码获取选中的字体属性。

PyQt5-如何创建字体对话框(QFontDialog)

5、当用show()函数显示对话框,可实时获取当前的字体设置时:

①弹窗字体选择改变时会发出 currentFontChanged(self, QFont) 信号,传递QFont信息。

②用 对话框的 currentFont()函数,赋值给参数QFont,即可获取当前选中的字体属性。

如图例:

----将信号 currentFontChanged连接一个自定义的槽函数,change(self,font);参数font 是向外传递的QFont对象。

----将选中的当前字体currentFont()赋值给参数font;

----通过QFont的各种方法获取字体属性。

----每次改变选中的字体,都能被获取。

PyQt5-如何创建字体对话框(QFontDialog)

1、通过 控件对象的 setFont(self, QFont) 方法可以设置字体的QFontDialog内的所有属性;

----上面例中都有 QFont对象。所以,设置就非常简单。

图例中 给 文本框对象,setFont()即可。

PyQt5-如何创建字体对话框(QFontDialog)

2、使用 exex() 显示对话框时,

①同样要获取 currentFont() 对象。setFont()即可。

②需要在点击对话框 ok后,关闭对话框,才能改变。

PyQt5-如何创建字体对话框(QFontDialog)

3、使用 open() 显示对话框时,

①同样要获取 currentFont() 对象。setFont()即可。

②需要在点击对话框 ok后,关闭对话框,才能改变。

PyQt5-如何创建字体对话框(QFontDialog)

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢