PyGobject(八十九)Pango系列——获取系统可用字体

来源:互联网 发布:淘宝家居椅子 编辑:程序博客网 时间:2024/06/14 04:02

  • 例子

例子

这里写图片描述
代码:

#!/usr/bin/env python3# Created by xiaosanyu at 16/7/6# section 139TITLE = "System Fonts"DESCRIPTION = """This example lists all availablefonts on a system in a TreeView widget"""import gigi.require_version("Gtk", "3.0")from gi.repository import Gtk, Gdk, Pangoclass PyApp(Gtk.Window):    def __init__(self):        super(PyApp, self).__init__()        self.set_size_request(350, 250)        self.set_border_width(8)        self.connect("destroy", Gtk.main_quit)        self.set_title("System fonts")        sw = Gtk.ScrolledWindow()        sw.set_shadow_type(Gtk.ShadowType.ETCHED_IN)        sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC)        context = self.create_pango_context()        self.fam = context.list_families()        store = self.create_model()        treeview = Gtk.TreeView(store)        treeview.set_rules_hint(True)        sw.add(treeview)        self.create_column(treeview)        self.add(sw)        self.show_all()    @staticmethod    def create_column(treeview):        renderer_text = Gtk.CellRendererText()        column = Gtk.TreeViewColumn("FontName", renderer_text, text=0)        column.set_sort_column_id(0)        treeview.append_column(column)    def create_model(self):        store = Gtk.ListStore(str)        for ff in self.fam:            store.append([ff.get_name()])        return storedef main():    PyApp()    Gtk.main()if __name__ == '__main__':    main()





代码下载地址:http://download.csdn.net/detail/a87b01c14/9594728

0 0
原创粉丝点击