我正在开发一个图形应用程序来呈现数据(不是游戏,而是真正的主力应用程序).它需要跨平台,所以我选择了:
蟒蛇
openGL(我需要3D,混合,纹理等)
pyopengl
wx/pywx - 窗口,对话等
最后一个组件--WX - 提出了一个问题.我可以把一个非常好看的应用程序放在一起(原型看起来很光滑) - 但是当我需要与用户交互以提问,获取输入时,我必须使用WX.它使应用程序看起来不一致,传统的UI与传统的对话框和组合和文本输入在全屏幕3D应用程序之上,混合,平滑运动,纹理等.
有没有人使用OpenGL和python开发GUI?你能与我分享你使用的工具包和/或技巧吗?我需要组合,文本输入,按钮,收音机,选项按钮,树视图.
有一些工具包,但它们要么是不完整的,要么是旧的并且没有维护.一个很好的例子是pyUI(http://pyui.sourceforge.net/) - 看上去很光滑,但未触及多年.
这不是一个答案,更多的是请求:请不要这样做.
您重新实现的小部件将缺少用户将错过的各种功能.你的文字输入框会支持拖拉吗?复制粘贴?从右到左的脚本?拖动选择?双击选中?所有这些机制是否都遵循您支持的每个平台的原生约定?
使用Wx,您的小部件可能看起来与应用程序不一致,但至少它们看起来与操作系统一致同样重要.更重要的是,他们会做到用户期望的.
(编辑)三个帖子,还有-3分?拧紧这个业力妓女的巢穴.原创海报:我在OpenGL中实现了一套基本的小部件(用于游戏UI),这是一个无休止的工作噩梦.
在QT的最新版本中,如果您真的想做类似的事情,可以将小部件绘制到 OpenGL上下文中.否则,在某些游戏引擎中使用CEGui.
除非您对最基本的外观和功能感到满意,否则自己实现GUI小部件除非您想要自己进行自我修改是浪费您的时间.