PyQt5基本控件详解之QFontDialog(十五)
程序员文章站
2022-05-28 11:10:59
...
QFontDialog
前言
QFontDialog控件是一个常用的字体选择对话框,可以让用户选择所显示文本的字号大小,样式和格式,QFontDialog是QDialog控件对话框的一部分,使用QFontDialog类的静态方法getFont(),可以从字体选择对话框中选择文本的显示字号大小样式和格式
实例:QFontDialog的使用
import sys
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
class FontDialogdemo(QWidget):
def __init__(self,parent=None):
super(FontDialogdemo, self).__init__(parent)
#垂直布局
layout=QVBoxLayout()
#创建按钮,绑定自定义槽函数,添加到布局中
self.fonButton=QPushButton('Choose Font')
self.fonButton.clicked.connect(self.getFont)
layout.addWidget(self.fonButton)
#创建标签,添加dao到布局中
self.FontLineEdit=QLabel('Hello 测试字体的例子')
layout.addWidget(self.FontLineEdit)
#设置主窗口布局及标题
self.setLayout(layout)
self.setWindowTitle("Font Dialog例子")
def getFont(self):
font,ok=QFontDialog.getFont()
if ok:
self.FontLineEdit.setFont(font)
if __name__ == '__main__':
app=QApplication(sys.argv)
demo=FontDialogdemo()
demo.show()
sys.exit(app.exec_())
运行程序,显示效果如下如
代码分析
在这个例子中,通过字体选择对话框选择相应的字体,并且选择字体的效果显示在QLineEdit的文本
实例化fontButton和fontLineEdit对象,并将FontButton的clicked信号和槽函数getFont()绑定在一起
self.fonButton=QPushButton('Choose Font')
self.fonButton.clicked.connect(self.getFont)
创建垂直布局QVBoxLayout布局,在垂直布局管理器中添加fontButton和fontLineEdit组件,并按照相应的位置添加到栅格布局中
layout = QVBoxLayout()
layout.addWidget(self.fonButton)
layout.addWidget(self.FontLineEdit)
当单击fontButton按钮时,将clicked信号发送到槽函数getFont(中)
self.fonButton.clicked.connect(self.getFont)
自定义槽函数,选择字体,并将字体效果设置到fontLineEdit中,getFont()方法返回的为元祖类型,同时返回所选择的字体和函数执行的状态
def getFont(self):
font,ok=QFontDialog.getFont()
if ok:
self.FontLineEdit.setFont(font)
源码以及相关文件下载:https://download.csdn.net/download/jia666666/10597897