编程语言
首页 > 编程语言> > python – 无法让pygobject使用绘图区域

python – 无法让pygobject使用绘图区域

作者:互联网

一般来说,我已成功使用Gtk3系统:Windows,盒子,网格,信号处理程序等.但是,无论我尝试什么,我都无法使用DrawingArea小部件.我怀疑我的设置有问题,但不知道如何检查.这是一个真正应该工作的简单示例:

#!/usr/bin/env python3 

from gi.repository import Gtk, Gdk
class MyExample(object): 
  def __init__(self, user_data=None): 
    window = Gtk.Window() 
    window.connect("destroy", Gtk.main_quit) 
    drawing_area = Gtk.DrawingArea() 
    drawing_area.set_size_request(300,300) 
    drawing_area.connect('draw',self.expose) 
    window.add(drawing_area) 
    window.show_all()  
  def expose(self,widget,cr,data): 
    print ("self_exposed") 
# === 
if __name__ == "__main__": 
    app = MyExample() 
    Gtk.main() 

当我运行它时,我收到此错误:

Exception TypeError: TypeError("Couldn't find conversion for foreign struct
'cairo.Context'",) in <module 'threading' from '/usr/lib/python3.2/threading.py'>
ignored

我使用的是Ubuntu 12.04和Python 3.2.我怀疑我的安装有问题但是什么?我试过重新安装python-gi-cairo.

谢谢你的任何想法,

麦克风

解决方法:

在这里查看我的答案:

Drawing in PyGobject (python3)

你需要安装python3-gi-cairo包.

标签:python,pygobject
来源: https://codeday.me/bug/20190902/1787648.html