在Python代码创建的窗口中更改字体
在用Python代码创建的窗口中更改字体。
我有一些可以正常运行的Python代码,它会在一个窗口中显示日期和时间,格式是MMDDYYYY HH:MM:ss。我想在日期和时间上方添加一些额外的文字,并且想要增大字体的大小(包括日期和时间MMDDYYYY HH:MM:SS)。我尝试添加不同的文字和字体大小,但这会导致我的代码无法正常工作。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pygtk
pygtk.require('2.0')
import gtk
import time
class Clock:
def __init__(self):
window = gtk.Window(gtk.WINDOW_TOPLEVEL)
window.connect("destroy", lambda w: gtk.main_quit())
window.set_title("mmddyyyyhhmmss-Clock")
self.label = gtk.Label()
window.add(self.label)
window.set_border_width(10)
window.show_all ()
def update(self):
self.label.set_text(time.strftime('%m/%d/%Y-%H%M%S'))
return True #needed to keep the update method in the schedule
def main():
gtk.main()
if __name__ == "__main__":
clock = Clock()
gtk.timeout_add(200, clock.update) #add to the main loop scheduled tasks
main()
1 个回答
1
使用标记语言通常可以满足你的需求。首先,在标签上启用它。然后,不要使用 set_text
,而是使用 set_markup
:
self.label.set_use_markup(True)
t = time.strftime('%m/%d/%Y-%H%M%S')
self.label.set_markup('<span size="18000">The time:</span> ' + t)
作为参考,GTK使用的标记语言是 Pango。