【问题标题】:Is there a Python library for easily writing zoomable UI's?是否有用于轻松编写可缩放 UI 的 Python 库?
【发布时间】:2009-03-24 10:32:42
【问题描述】:

我的下一个工作将主要集中在处理在二维可缩放平面或画布上组织时最容易理解的数据,而不是使用列表和属性表单。

该库可以基于 OpenGL、GTK+ 或 Cairo。它应该允许我:

  • 使用矢量形状和文本构建小部件(甚至可能基于 SVG?)
  • 将这些小部件排列在 2D 平面上
  • 捕捉小部件相关事件
  • 深入放大小部件以显示更多数据
  • 在树中排列小部件
  • 流畅地为小部件设置动画

如果它还允许一些数据绑定或模型/视图概念,那也无妨。

【问题讨论】:

  • 请在这里放一些结果,也许是pastebin上的一个小示例脚本,一旦你有任何进展!我们非常想看看您的结果!

标签: python user-interface opengl gtk cairo


【解决方案1】:

Qt 已经涵盖了这个...检查 PyQt

【讨论】:

  • 我想使用 GTK+,因为它在主要目标平台 Ubuntu 上感觉很原生。
  • Qt 现在(有一段时间)有一个 QGtkStyle ,即使在 Gnome 上,它看起来也完全是原生的,就像在其他窗口管理器中一样。见:labs.trolltech.com/blogs/2008/05/13/introducing-qgtkstyle
  • 感谢提示,QGtkStyle 解决了我的另一个问题。但是现在我看了 PyQt,我真的被推迟了。当然,这个库什么都有,但我认为自定义类型、C++ 签名和带有类型信息的信号处理程序感觉太奇怪了,无法考虑。我坚持我所知道的;)
【解决方案2】:

我认为Clutter 非常适合你。

来自网站:

Clutter 是一款开源软件 用于快速、直观地创建的库 丰富的动画图形用户 接口。

Clutter 是用 C 编写的,但它的 Python bindings 很棒。

一个非常相似的项目是Pigment

Pigment 是一个 3D 场景图库 旨在轻松创造丰富的 应用程序用户界面。

【讨论】:

  • 以前处理过杂乱,并且在稳定性方面遇到了一些问题,但我想没有办法解决它。也会看看颜料。
猜你喜欢
  • 1970-01-01
  • 2011-02-23
  • 1970-01-01
  • 2010-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-16
  • 1970-01-01
相关资源
最近更新 更多