zoukankan      html  css  js  c++  java
  • PyQt4字体对话框QFontDialog

    字体对话框时用来显示字体的对话框部件。

    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    import sys
    from PyQt4 import QtGui, QtCore 
    
    class FontDialog(QtGui.QWidget):
        def __init__(self, parent = None):
            QtGui.QWidget.__init__(self)
            hbox = QtGui.QHBoxLayout()
            self.setGeometry(300, 300, 250, 110)
            self.setWindowTitle('Font Dialog')
            button = QtGui.QPushButton('Dialog', self)
            button.setFocusPolicy(QtCore.Qt.NoFocus)
            button.move(20, 20)
            hbox.addWidget(button)
            self.connect(button, QtCore.SIGNAL('clicked()'), self.showDialog)
            self.label = QtGui.QLabel('moonlight poet, work hard to gain a better life', self)
            self.label.move(130, 20)
            hbox.addWidget(self.label, 1)
            self.setLayout(hbox)
            
        def showDialog(self):
            font, ok = QtGui.QFontDialog.getFont()
            if ok:
                self.label.setFont(font)
        
    app = QtGui.QApplication(sys.argv)
    fd = FontDialog()
    fd.show()
    sys.exit(app.exec_())

    效果:

    在本示例中,我们在主界面中显示了一个按钮和一个标签。单击按钮后,用户可在弹出字体对话框中选择字体来修改标签中的字体样式。

            hbox.addWidget(button)

    该语句将label标签加入到hbox布局中,并通过第二个参数1设置label的大小时可变的。该设置是必须的,因为在用户选择不同的字体时,label标签中的字体可能会变大,若不进行该设置,标签中的内容就可能不会被全部显示。

            font, ok = QtGui.QFontDialog.getFont()

    该语句将弹出字体对话框。

            if ok:
                self.label.setFont(font)

    在用户选择了字体并单击OK按钮后,使用标签(label)对象的setFont方法设置标签内容的字体。

  • 相关阅读:
    KBMMW 4.80.00 发布
    RCF库ClientStub.setAutoReconnect
    编译 boost
    2017学习计划
    _beginthreadex注意事项
    push_back模式工作
    总结2016
    <转>好婚姻是彼此放心
    ProcessExplore 最新版
    网站seo新手快速提升自己的技巧
  • 原文地址:https://www.cnblogs.com/moonlightpoet/p/5354648.html
Copyright © 2011-2022 走看看