Python自定义渲染/绘图的GUI界面

8
我正在寻找一个Python GUI库,可以重写渲染/绘制部分。它必须支持基本的小部件(按钮、组合框、列表框、文本编辑器、滚动条),布局管理和事件处理。我想要的是使用自定义的Direct3D和OpenGL渲染器来进行所有GUI的绘制/渲染。S.Lott建议进行修改:我需要将这个GUI用于3D编辑器,因为我需要从GUI元素中拖放很多东西到3D渲染区域中,所以我想使用一个使用Direct3D(首选)或OpenGL进行渲染的GUI系统。它还必须具有良好的外观。使用类似WPF的GUI很难实现这一点,因为WPF没有句柄。此外,它必须完全免费供商业使用。我还想在我的应用程序中使用我初始化的3D部分的渲染上下文。

@S.Lott:我考虑过GTK和PyGTK,但似乎很难覆盖渲染。而且它还会带来很多依赖项。我正在寻找一些简单的东西。 - costy.petrisor
它必须支持基本的小部件...布局管理、事件处理,而“我正在寻找简单的东西”则不太可能同时实现。请提供足够的信息,以便我们能够弄清楚您要寻找什么。 - S.Lott
你能否提供一下你想要实现的UI草图?我认为在正常情况下,即使是3D程序,你也不需要完全按照你所要求的去做。 - SingleNegationElimination
5个回答

2
我不知道你在做什么,所以也许这不是你要找的,但是: 你考虑过使用Blender及其游戏引擎吗?
它支持Python脚本编写,并提供一些API来创建“标准”GUI,同时允许你对3D模型进行很多酷炫的操作。如果你的应用程序需要大量的3D模型操作,这可能特别有用。
然后你可以将它“编译”(它只是构建了一个包含所有依赖项的全合一包,类似于py2exe的方式),以满足你需要的任何平台。

1
您可以使用Qt场景框架进行OpenGL渲染。在诺基亚网站上有许多示例可供参考。

1

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

这不仅仅是我的意见,参见:wxPython引用

wxPython是最好、最成熟的跨平台GUI工具包, 考虑到一些约束条件。wxPython不成为Python GUI 工具包的标准,唯一的原因是Tkinter先出现了。 -- Guido van Rossum

我不能说添加自己的渲染器有多容易或困难。


添加自己的渲染器并不难。 - vy32

0

0

Python中有OpenGL绑定可以进行三维渲染。个人建议使用wxpython作为“GUI”管理器,并使用绑定来进行其余的opengl操作。Wx在其GLCanvas演示中提供了必要的演示(检查wxpython演示安装)和信息。

另外一个示例代码在这里


我还想在我的应用程序中使用我初始化的 3D 部分的渲染上下文。 - costy.petrisor
我认为OP正在寻找一个轻量级、仅逻辑的GUI(即没有任何特定的渲染内部)。我曾经看到过一个并且进行了谷歌搜索,但不幸的是它已经不存在了。 - Kos

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接