Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:漂亮、干净、可打包的windows GUI库_Python_User Interface_Wxpython_Tkinter - Fatal编程技术网

Python:漂亮、干净、可打包的windows GUI库

Python:漂亮、干净、可打包的windows GUI库,python,user-interface,wxpython,tkinter,Python,User Interface,Wxpython,Tkinter,我需要为最终用户下载的桌面应用程序创建一个简单的基于windows的GUI。应用程序是用python编写的,将打包为安装程序或可执行文件 我需要的功能很简单-从各种列表中选择,显示进度条等。没有动画、精灵或其他繁重/奇异的东西 Python GUI库似乎有很多选项(Tk、QT、wxPython、Gtk等)。您有什么建议: 易于学习和维护 可使用py2exe或类似产品进行干净包装 看起来不错 [更新]值得一提的是,我最终选择了tkinter。它有很好的文档记录,可以使它看起来很漂亮(主要是使用

我需要为最终用户下载的桌面应用程序创建一个简单的基于windows的GUI。应用程序是用python编写的,将打包为安装程序或可执行文件

我需要的功能很简单-从各种列表中选择,显示进度条等。没有动画、精灵或其他繁重/奇异的东西

Python GUI库似乎有很多选项(Tk、QT、wxPython、Gtk等)。您有什么建议:

  • 易于学习和维护
  • 可使用py2exe或类似产品进行干净包装
  • 看起来不错

[更新]值得一提的是,我最终选择了tkinter。它有很好的文档记录,可以使它看起来很漂亮(主要是使用本机字体),最重要的是,它与Python一起提供,因此没有什么额外的问题需要担心。wxpython看起来也不错,但下载量是10万左右,我不想给我分发的软件包增加额外的重量。

我过去使用过wxpython(用于Mac/Windows部署)。效果很好。而且它看起来比Tk更漂亮:)

从同时使用wxPython和TKinter来看,我认为wxPython看起来更漂亮,而且易学


尽管你说你打算在Windows上使用这个程序,但值得一提的是,我在Mac上遇到了TKinter无法正常工作的问题。

TKinter
的主要优势(IMHO!)是它与Python一起提供(至少在Windows上)。它看起来很难看,而且没有进度条或类似的东西(至少没有内置的)。作为Tk的薄包装,它的API感觉不是很优雅或直观。然而,网络上有很多很好的Tkinter资源,所以学习它并不一定是一件痛苦的事

对于任何严肃的GUI尝试,我也会选择wxPython。不过,我不知道包装。但是我不希望出现任何问题。

我以前使用过wxPython,它仍然是一个优秀的工具。其他的对我来说总是有点麻烦

网络上有一些说明可以准确地显示

本节特别提供了一些真正干净/可用的结果:
我能推荐的最漂亮的是PyQt(几乎是本机代码),否则最好直接使用本机.net代码的IronPython


无论如何,在多平台性和包装友好性方面,没有什么能比得上tkinter。

丑陋主要是设计师和编码人员的错,当然,也是旁观者的错。Tk本身并不丑陋,只是一些默认值有点过时。专业开发人员可以使Tk应用程序与其他工具包几乎无法区分。Bryan,如果您有任何让Tkinter看起来有吸引力/原生的建议,我将不胜感激。@Parand:我能给出的最简单的答案是使用Tk 8.5中提供的主题小部件。退房请注意,这并不完全是一个前沿功能——主题小部件已经在Tcl/Tk上使用了很多年,但不幸的是Tkinter落后于最先进的技术。就我个人而言,我不同意学习的简单性。Tkinter和wxPython显然有着不同的理念,有些人更容易理解,有些人则更难理解。请看这个问题:请注意,从那时起,这两种理念已经演变,似乎已经可以使用了,因此许可证可能不再是一个问题。