具有自定义渲染/绘图的Python GUI

时间:2010-11-17 10:51:18

标签: python user-interface opengl directx

我正在寻找一个可以重写渲染/绘图的Python GUI库。

它必须支持基本小部件(按钮,组合框,列表框,文本编辑器,滚动),布局管理,事件处理

我正在寻找的是使用我的自定义Direct3D和OpenGL渲染器来进行所有GUI的绘制/渲染。

S.Lott建议的编辑:我需要将这个GUI用于3D编辑器,因为我必须将很多东西从GUI元素拖放到3d渲染区域,我想使用一个GUI系统使用Direct3D(preffered)或OpenGL渲染。它也必须有一个漂亮的外观。用WPF这样的GUI很难实现这一点,因为WPF没有句柄。此外,它还需要绝对免费用于商业用途。

编辑:我还想使用我在我的应用程序中为3d部件初始化的渲染上下文

5 个答案:

答案 0 :(得分:2)

我不知道你在做什么,所以也许这不是你想要的,但是: 您是否考虑过使用Blender +其游戏引擎?

它支持Python脚本,并提供一些API来创建“标准”GUI,同时允许您使用3d模型做很多很酷的事情。如果您的应用程序执行了大量的3D模型操作,这可能特别有用。

然后你就可以“编译”它(它只是构建包含所有依赖关系的一体化包,其方式类似于py2exe所做的),适用于你需要的任何平台。

答案 1 :(得分:1)

您可以将Qt Scene Framework与OpenGL渲染一起使用。诺基亚网站上有很多例子。

答案 2 :(得分:1)

最好的Python GUI工具包是wxPython(也称为wxWidgets)。

这不仅仅是我的意见,另请参阅:wxPython quotes

  

wxPython是最好的,也是最成熟的   给出了一个跨平台的GUI工具包   约束数量。唯一的理由   wxPython不是标准的Python GUI   工具包是Tkinter在那里   第一。 - Guido van Rossum

我不能说添加你自己的渲染器是多么容易或多难。

答案 3 :(得分:0)

Python中有OpenGL绑定可以让你进行3D渲染。就个人而言,我会使用wxpython作为你的'gui'管理器,并使用绑定为其余部分做opengl。 Wx在他们的GLCanvas演示中有必要的演示(检查wxpython演示安装)和信息。

另一个示例代码也是here

答案 4 :(得分:0)

您可能会发现PyClutter有用。