4
最簡單的示例。我們通過Gtk創建一個窗口,我們在那裏添加繪製Gtk.DrawingArea的區域,並且在其上我們通過Cairo繪製文本。Cairo示例適用於Python 2.7,但不適用於Python 3
例子:
#!/usr/bin/env python
from gi.repository import Gtk
import cairo
class MyWindow (Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self, title='MyWindow')
darea = Gtk.DrawingArea()
darea.connect('draw', self.on_draw)
self.add(darea)
def on_draw(self, widget, ctx):
ctx.set_source_rgb(0, 0, 0)
ctx.select_font_face("Sans", cairo.FONT_SLANT_NORMAL,
cairo.FONT_WEIGHT_NORMAL)
ctx.set_font_size(20)
ctx.move_to(10, 20)
ctx.show_text("Text...")
win = MyWindow()
win.connect('delete-event', Gtk.main_quit)
win.show_all()
Gtk.main()
在我的一切完美地工作在Python 2.7版,但只有它是需要改變的Python Python3和文本不繪製了。 可能會有什麼問題?
在Ubuntu 12.10上適用於Python 3.2.3。你使用哪種分佈? –
我使用Ubuntu 12.04。關於ubuntu 12.10有多少我知道默認情況下使用python 3?在Ubuntu 12.04中使用python 2.7。可以給我任何建立的軟件包不夠嗎? – Wolfgang