不要问我为什么要用 python 来做这种事,我回到“高兴咋地”也不是不可以,总之好奇有没有好的解决方案。逛了一圈下来,总体上来说,python 图形界面有以下几个可行度比较高的解决方案。

1. pyside

为什么要把它写第一个呢?因为已经接触过 Qt,所以,总体来讲,感觉它更亲一点。没错,它就是 pyQt 的 LGPL 版本(Qt官方的介绍是,Python for Qt)。

这个框架最早是由 Nokia 的芒果团队做完的,但是,众所周知的原因,这个团队已经消失了。目前从找到的资料来看,Qt 重新接管了它的开发工作,而且处于活跃状态。但是也不见有人推广啊。。。据说,Matplotlib,PhotoGrabber,Wing IDE,Lucas Chess,Fminer都是用 pyside 来做的,貌似很好用的样子(别问我他们是干嘛的,我是 copy 来的)。

Nokia 的团队开发的哟!是为了手机开发的哟!那自然天然的支持 Qt Mobile Interface 了。

它的主页:http://qt-project.org/wiki/PySide/

这两位兄台对 pyside 做了不错的介绍:

1) http://blog.sina.com.cn/s/blog_62c832270101dca6.html

2)http://www.cnblogs.com/goodhacker/p/3984377.html

2. tkInter

这是 python 做的 tk/tcl 的壳。tk/tcl 有着广泛的应用,据说用户群体很庞大。而且, tcl8 以后,用它做出来的 App 已经可以具备系统原生的效果了,不再是那种丑丑的界面。

这个是 python 官方承认的标准 GUI 方案(官方说 “de-facto standard“,执行上的标准,我们还没承认?),资料也比较多,自行了解吧,这里只做备忘。

总体感觉不大好,虽然说也支持多种平台,但是还是呵呵了。

主页:https://wiki.python.org/moin/TkInter/

3. wxPython

wxWidget 的 python 版本。wxWidget 的知名度也就不必介绍了,似乎 wxPython 也比 tkinter 更受欢迎。wxPython 的官方站更是吊炸天的挂着一句“Why the hell hasn't wxPython become the standard GUI for Python yet?”。

tkinter 都没兴趣了解, wxWidget 也就被呵呵了。不过做小三能做这么有名,也自然有过人之处,自然不能榜上无名。

主页:http://www.wxpython.org

python图形界面(GUI)设计的更多相关文章

  1. 十. 图形界面(GUI)设计1.图形界面设计基础

    早先程序使用最简单的输入输出方式,用户在键盘输入数据,程序将信息输出在屏幕上.现代程序要求使用图形用户界面(Graphical User Interface,GUI),界面中有菜单.按钮等,用户通过鼠 ...

  2. 十. 图形界面(GUI)设计3.标签、按钮和按钮事件

    标签和按钮也许是图形界面中最常见的两种组件,按钮又总是与激发动作事件有关. 标签 标签(JLabel)是最简单的Swing组件.标签对象的作用是对位于其后的界面组件作说明.可以设置标签的属性,即前景色 ...

  3. 十. 图形界面(GUI)设计2.框架窗口

    窗口是GUI编程的基础,小应用程序或图形界面的应用程序的可视组件都放在窗口中,在GUI中,窗口是用户屏幕的一部分,起着在屏幕中一个小屏幕的作用.有以下三种窗口: Applet窗口:Applet类管理这 ...

  4. 十. 图形界面(GUI)设计6.文本框和文本区

    在图形界面中,文本框和文本区是用于信息输入输出的组件. 文本框 文本框(JTextField)是界面中用于输入和输出一行文本的框.JTextField类用来建立文本框.与文本框相关的接口是Action ...

  5. 十. 图形界面(GUI)设计7.文本框和文本区的输入输出

    在GUI中,常用文本框和文本区实现数据的输入和输出.如果采用文本区输入,通常另设一个数据输入完成按钮.当数据输入结束时,点击这个按钮.事件处理程序利用getText()方法从文本区中读取字符串信息.对 ...

  6. 十. 图形界面(GUI)设计5.布局设计

    在界面设计中,一个容器要放置许多组件,为了美观,为组件安排在容器中的位置,这就是布局设计.java.awt中定义了多种布局类,每种布局类对应一种布局的策略.常用的有以下布局类: FlowLayout, ...

  7. 十. 图形界面(GUI)设计12.滚动条

    滚动条(JScrollBar)也称为滑块,用来表示一个相对值,该值代表指定范围内的一个整数.例如,用Word编辑文档时,编辑窗右边的滑块对应当前编辑位置在整个文档中的相对位置,可以通过移动选择新的编辑 ...

  8. 十. 图形界面(GUI)设计11.对话框

    对话框是为了人机对话过程提供交互模式的工具.应用程序通过对话框,或给用户提供信息,或从用户获得信息.对话框是一个临时窗口,可以在其中放置用于得到用户输入的控件.在Swing中,有两个对话框类,它们是J ...

  9. 十. 图形界面(GUI)设计10.菜单

    有两种类型的菜单:下拉式菜单和弹出式菜单.本章只讨论下拉式菜单编程方法.菜单与JComboBox和JCheckBox不同,它们在界面中是一直可见的.菜单与JComboBox的相同之处是每次只可选择一个 ...

  10. 十. 图形界面(GUI)设计9.列表和组合框

    列表和组合框是又一类供用户选择的界面组件,用于在一组选择项目选择,组合框还可以输入新的选择. 列表 列表(JList)在界面中表现为列表框,是JList类或它的子类的对象.程序可以在列表框中加入多个文 ...

随机推荐

  1. TinyFrame升级之四:IOC容器

    在这个框架中,我们使用Autofac作为IOC容器,来实现控制反转,依赖注入的目的. 在程序加载的时候,我需要将系统中所有用到的接口与之对应的实现进行装载.由于用户交互部分是在TinyFrame.We ...

  2. AsyncTask源码解析

    package com.example.demo.activity.net; import java.util.ArrayDeque; import java.util.concurrent.Bloc ...

  3. 通过js动态生成页面表格

    var redlineTemplateP = $(".redlineDataList"); for (var index in detailArraryLists.rows){ v ...

  4. 开源免费的HTML5游戏引擎——青瓷引擎(QICI Engine) 1.0正式版发布了!

    青瓷引擎的成长 青瓷引擎自2015年4月项目启动开始,7月首次亮相2015年ChinaJoy,便得到业界的极大关注,随后开启限量测试,收到数百个开发者团队的试用申请及反馈,期间经历了18个内测版本,完 ...

  5. Java学习笔记(二二)——Java HashMap

    [前面的话] 早上起来好瞌睡哈,最近要注意一样作息状态.       HashMap好好学习一下. [定义] Hashmap:是一个散列表,它存储的内容是键值对(key——value)映射.允许nul ...

  6. 中晟银泰国际中心酒店式公寓介绍 业主交流QQ群:319843248

    行政区域:中原区 区域板块:西北板块 项目位置:中原路与华山路东北角(中原万达北侧中原西路对面) 建筑类型:高层 物业类别:酒店式公寓 户型面积:公寓35-100平米 开发商:中晟集团 投资商:中晟集 ...

  7. EditPlus怎样自动换行

    如果只是使用快捷键Ctrl+Shift+W或者使用文档→自动换行,的话,关闭软件之后再次打开时就会重新出现不能自动换行的问题. 中文版的是:文档→固定值设置(文档 菜单的最后一个),会打开一个“工具→ ...

  8. 50-ln 简明笔记

    为文件建立链接 ln [options] existing-file [new-link] ln [options] existing-file-list directory ln可以为一个或多个文件 ...

  9. ORA-600(qerltcInsertSelectRop_bad_state)错误

    来源于: http://blog.itpub.net/22458783/viewspace-615501/ 这是碰到的第一个11.2上的bug,在利用IGNORE_ROW_ON_DUPKEY_INDE ...

  10. “Ceph浅析”系列之二——Ceph概况

    本文将对Ceph的基本情况进行概要介绍,以期读者能够在不涉及技术细节的情况下对Ceph建立一个初步印象. 1. 什么是Ceph? Ceph的官方网站Ceph.com上用如下这句话简明扼要地定义了Cep ...