2017-08-22 134 views
0

我用Python和PyGame制作了一个图形用户界面,我想从现在开始制作更多未来的GUI。在创建这个特定的GUI时,我发现PyGame可能不是最好的选择,因为用户事件的数量有限,而且图形质量较差,我的意思是在图像中的停止按钮旁边绘制的弧线,具有未涂漆的像素。PyGame的GUI

我想知道的是:

  • 是我错了那pygame的是不恰当的,这和我应该仍然使用pygame的? - 也许我不应该使用绘画,并应该使用图像,但是然后失去了改变颜色的能力。
  • 我应该学习OpenGL并创建自己的对象和交互吗?
  • 也许Python不是最合适的工具,可以使用C++和OpenGL或DirectX吗?

使用Python最好的事情是容易使事情发生,我创建了一个简单的程序,从网站获取数据并使用Pandas将其保存为CSV文件。这个图形用户界面只是为了显示进度条,并且有一个启动按钮在另一个线程中执行主函数,所以GUI不会停止。

GUI made with PyGame

回答

0

你是正确的,pygame的是不是你要找的东西相当,但很多人都在蟒蛇制作游戏提出了非常广阔的模块。另外,python是像C这样的跨平台编程语言的事实很棒。唯一的挫折是如果你想让这个程序独立。很少有电脑会预装python 3.6(我忽略了MacOS已经安装了python 2.7的事实),许多允许您将脚本构建到独立应用程序的模块不支持python 3.6。

你可以使用C++与OpenGL或DirectX但这些工具是一个好一点的使用难度,现在我不知道你是在编码多么先进,如果你想使你的应用程序同时为MacOS和Windows平台需要很多工作来移植应用程序。

这取决于你,我希望我已经帮助!

Mr.Zeus

1

看看herehere,它可能是最快的设置与DirectX渲染GUI。也结帐样本,也许有关于渲染UI的东西。

DirectX编码非常吸引人,OpenGL 3+也是如此,DirectX却以SpriteBatch的简单性而胜出。另一方面,OpenGL具有用于即时绘制的传统绑定,因此您可以仅指示形成多边形和纹理的点,而无需创建缓冲区或任何内容,但我会坚持使用DirectX。

然而,你必须实现像悬停在元素上的用户输入来显示一些信息,这也是非常重要的(需要管理几何和东西),考虑使用一些随时可用的库,如CEGUI