PySide2.QtWidgets中的字体选择器
发布时间:2023-12-25 17:49:59
在PySide2中,可以使用QFontDialog来创建一个字体选择器对话框。字体选择器对话框允许用户选择所需的字体、样式和大小。
下面是一个使用字体选择器的简单示例:
import sys
from PySide2.QtWidgets import QApplication, QMainWindow, QPushButton, QLabel, QFontDialog
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.resize(300, 200)
self.button = QPushButton("选择字体", self)
self.button.setGeometry(100, 80, 100, 30)
self.button.clicked.connect(self.showFontDialog)
self.label = QLabel("Hello, World!", self)
self.label.setGeometry(50, 50, 200, 30)
def showFontDialog(self):
font, ok = QFontDialog.getFont(self.label.font(), self, "选择字体")
if ok:
self.label.setFont(font)
if __name__ == "__main__":
app = QApplication(sys.argv)
mainWindow = MainWindow()
mainWindow.show()
sys.exit(app.exec_())
在上面的示例中,我们创建了一个QMainWindow窗口,并在窗口中添加了一个QPushButton和一个QLabel。按钮绑定了一个点击事件showFontDialog,当点击按钮时,会弹出一个字体选择器对话框。如果用户选择了合适的字体并点击确认按钮,那么QLabel的字体就会被修改为用户选择的字体。
在showFontDialog方法中,我们使用QFontDialog.getFont来获取字体选择器的选择结果。 个参数是QLabel当前的字体,第二个参数是对话框的父对象,第三个参数是对话框标题。getFont方法返回一个元组, 个元素是用户选择的字体,第二个元素是一个布尔值,表示用户是否点击了确认按钮。
在示例中,我们将用户选择的字体设置给QLabel,以实时更新标签的字体。
