• pyqt中使用font awesome字体的两种方法


    1、使用第三方库文件:qtawesome,安装方法:pip install QtAwesome

    例子:

    # -*- coding: utf-8 -*-#
    
    #-------------------------------------------------------------------------------
    # Name:        使用第三方库:qtawesome库
    # Description:
    # Author:      lgk
    # Date:        2018/5/18
    #-------------------------------------------------------------------------------
    
    from PyQt4.QtGui import *
    from PyQt4.QtCore import *
    import sys
    import qtawesome as qta
    
    class MyWindow(QMainWindow):
        def __init__(self):
            super(MyWindow, self).__init__()
    
            mainWidget = QWidget()
            layout = QVBoxLayout(mainWidget)
    
            icon1 = qta.icon('fa.music', scale_factor = 1, color='blue')
            btn1 = QPushButton(icon1, 'Icon + Text')
            font=QFont(btn1.font())
            font.setPointSize(30)
            btn1.setFont(font)
    
            btn2 = QPushButton(unichr(0xf101))
            btn2.setFont(qta.font('fa', 50))
    
            layout.addWidget(btn1)
            layout.addWidget(btn2)
    
            self.setCentralWidget(mainWidget)
            btn1.clicked.connect(quit)
    
    def main():
        app = QApplication(sys.argv)
        mainWnd = MyWindow()
        mainWnd.show()
        sys.exit(app.exec_())
    
    if __name__ == '__main__':
        main()
    

     

    2、不使用第三方库文件,要求在当前目录下必需有字体文件:fontawesome-webfont.ttf

    例子:

    # -*- coding: utf-8 -*-#
    
    #-------------------------------------------------------------------------------
    # Name:         不使用第三方库
    # Description:  在当前目录下必需有字体文件:fontawesome-webfont.ttf
    # Author:       lgk
    # Date:         2018/5/18
    #-------------------------------------------------------------------------------
    
    import sys
    from PyQt4.QtGui import *
    from PyQt4.QtCore import *
    
    class MyWindow(QMainWindow):
        css = """
            QToolButton{{
                border: None;
            }}
        """
    
        def __init__(self):
            super(MyWindow, self).__init__()
    
            self.setStyleSheet(self.css.format())
    
            fontId = QFontDatabase.addApplicationFont("fontawesome-webfont.ttf")
            fontName = QFontDatabase.applicationFontFamilies(fontId)[0]
            self.font = QFont(fontName, 30)
    
            btn = QToolButton(self)
            btn.setToolButtonStyle(Qt.ToolButtonIconOnly)
            btn.setFont(self.font)
            btn.setText(unichr(0xf101))
    
            self.setCentralWidget(btn)
            btn.clicked.connect(quit)
    
    def main():
        app = QApplication(sys.argv)
        mainWnd = MyWindow()
        mainWnd.show()
        sys.exit(app.exec_())
    
    if __name__ == '__main__':
        main()
    

      

  • 相关阅读:
    [bzoj4721][noip2016]蚯蚓
    [bzoj1112][POI2008]砖块KLO
    [bzoj3196][tyvj1728]普通平衡树
    [bzoj1596][Usaco2008 Jan]电话网络
    [bzoj3371][poj2009][Usaco2004 Mar]Moo University
    [bzoj2208][Jsoi2010]连通数
    郑捷《机器学习算法原理与编程实践》学习笔记(第四章 推荐系统原理)(二)kmeans
    郑捷《机器学习算法原理与编程实践》学习笔记(第四章 推荐系统原理)(一)推荐系统概述
    Python_sklearn机器学习库学习笔记(四)decision_tree(决策树)
    C++STL学习笔记_(1)vector知识
  • 原文地址:https://www.cnblogs.com/luke0011/p/9056515.html
Copyright © 2020-2023  润新知