繁体   English   中英

将GooCanvas与Python 3和GTK +结合使用

[英]Using GooCanvas with Python 3 and GTK+

我正在尝试使用需要画布的GUI编写应用程序。 我正在使用Python 3和GTK + 3。

我发现GooCanvas应该适用于此,但什至无法安装它或使演示正常工作。

最近有没有人将此库与GTK + 3一起使用? 我找不到关于此的讨论,这让我感到惊讶。 我在想什么吗? 有没有我找不到的更好的画布?

Gtk3的版本为GooCanvas-2.x。 自省外观使GooCanvas仍然存在一些小问题。 这是“现代” GooCanvas的一个非常简单的示例:

from gi.repository import Gtk, GooCanvas

def main(args):
    w = Gtk.Window()
    w.connect('destroy', lambda x: Gtk.main_quit())

    cv = GooCanvas.Canvas()
    cv_root = cv.get_root_item()
    rect = GooCanvas.CanvasRect(
            parent = cv_root,
            stroke_color = 'red',
            x = 10, y = 20,
            width = 40, height = 30)

    w.add(cv)
    w.show_all()
    Gtk.main()

    return 0

if __name__ == '__main__':
    import sys
    sys.exit(main(sys.argv))

存储库系统需要一些时间来适应,但是有很多好处。 据我所知,没有“更好”的画布。 您可以直接使用Cairo,但GooCanvas可以处理许多烦人的事情,例如自动重绘画布。

编辑

ImportError:无法导入名称GooCanvas,未找到内省类型库

这意味着您的自省安装未完成。 我怀疑您在Python中缺少'pgi'模块。 pip3 install pgi ),以及PyGObject的更新版本(可能在发行版存储库中可用)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM