简单的Python GUI界面框架
Python开发GUI界面, 可以使用pyQT或者wxpython。 不过不论pyQT还是wxpython都需要比较多的学习成本。Python工程往往是用于快速开发的,有些时候引入pyQT,wxpython会让python工程变得比较复杂。
在很多情况下,python开发的都是命令行程序,用户很多时候抱怨最大的不是程序的输出,而是命令行的参数需要记忆。所以很多时候,python命令行程序并不需要整个程序都是GUI,只需要命令行输入替换为GUI, 程序的设置替换为GUI就可以了。
比如说,git命令功能很强大,对于初学者而言,最大的困难就在于git命令如何写,git命令执行结果在terminal中输出,大部分人还是勉强可以接受的。
这里介绍一个Python框架,可以快速的设计出GUI。可以说是目前最简单的python GUI开发框架。
pyFormUI基于wxpython设计的,不过对wxpython进行了完全封装。使用时不用了解wxpython.
安装pyFormUI
1.下载pyFormUI
pyFormUI在:
https://github.com/jeffchau1979/pyFormUI
git clone https://github.com/jeffchau1979/pyFormUI.git
2.安装wxpython
sudo apt-get install python-wxtools
3.进入Demo
python Demo.py
可看到执行结果:
编写pyFormUI程序
可以参考Demo目录下的SimpleDemo.py ,SimpleDemo.xml这个例子来创建pyFormUI程序。
1.程序的界面是采用XML定义的
<?xml version="1.0"?>
<form title="Demo GUI" width='500' height='100'>
<line>
<static title="Text:" width='50' />
<text id='id_text'/>
</line>
<line align="right">
<button id='id_ok' title='Ok'/>
</line>
</form>
2. 然后加载xml界面,并显示,这部分代码按如下模版写就可以了。
from FormUI import *
builder = Builder()
builder.loadLayout('demo.xml')
formUI = FormUI(builder)
formUI.show()
3. 对xml中定义的控件,添加处理
def OkButtonHandler(windowHandler, handlerPara):
print handlerPara.getValue('id_text')
windowHandler.closeWindow()
builder.setCtrlHandler('id_ok', OkButtonHandler)
简单的Python GUI界面框架的更多相关文章
- 简单的python GUI例子
写一个简单的界面很容易,即使是什么都不了解的情况下,这个文本转载了最简单的界面编写,下个文本介绍了TK的简单但具体的应用 在python中创建一个窗口,然后显示出来. from Tkinter imp ...
- 一个简单的python线程池框架
初学python,实现了一个简单的线程池框架,线程池中除Wokers(工作线程)外,还单独创建了一个日志线程,用于日志的输出.线程间采用Queue方式进行通信. 代码如下:(不足之处,还请高手指正) ...
- Python GUI界面编程
常用GUI框架 wxPython 安装wxPython pip install -U wxPython C:\Users> pip install -U wxPython Collecting ...
- Python GUI界面开发环境配置:Pycharm+PyQt5
通过DoS命令行执行如下命令,可能需要管理员权限. 检查Python版本:python 更新pip版本:python -m pip install --upgrade pip 安装PyQt5: pip ...
- Flask-最简单的Python http服务框架使用
环境准备 Python + pip + Flask sudo easy_install pip sudo pip install flask 代码如下(做了个jieba分词的服务) # encodin ...
- Python GUI编程(Tkinter) windows界面开发
Python实现GUI简单的来说可以调用Tkinter库,这样一般的需求都可以实现,显示简单的windows窗口代码如下: python_gui.py 1 #!C:\Python27\python.e ...
- Python 图形界面(GUI)设计
不要问我为什么要用 Python 来做这种事,我回到“高兴咋地”也不是不可以,总之好奇有没有好的解决方案.逛了一圈下来,总体上来说,Python 图形界面有以下几个可行度比较高的解决方案. 1. py ...
- python图形界面(GUI)设计
不要问我为什么要用 python 来做这种事,我回到“高兴咋地”也不是不可以,总之好奇有没有好的解决方案.逛了一圈下来,总体上来说,python 图形界面有以下几个可行度比较高的解决方案. 1. py ...
- python GUI实战项目——tkinter库的简单实例
一.项目说明: 本次通过实现一个小的功能模块对Python GUI进行实践学习.项目来源于软件制造工程的作业.记录在这里以复习下思路和总结编码过程.所有的源代码和文件放在这里: 链接: https:/ ...
随机推荐
- ORA-16032和ORA-07286 LOG_ARCHIVE_DEST_1没生效
主备切换在备库startup时出现归档路径没写到spfile里...注意:修改参数时最好带上scope=spfile或scope=both,以免重启出现异常.SQL> startup mount ...
- C语言复习上
通常开始学习C语言的时候,第一句写的就是"helloword" int main(){ printf("hello word"); } 接下来的日子里需要注意的 ...
- 新手学Html之JSP基础语法——入门(二)
JSP基础语法 JSP注释 comment.jsp <%@ page language="java" contentType="text/html; charset ...
- "echo 0 /proc/sys/kernel/hung_task_timeout_secs" disable this message
问题现象: 问题原因: 默认情况下, Linux会最多使用40%的可用内存作为文件系统缓存.当超过这个阈值后,文件系统会把将缓存中的内存全部写入磁盘, 导致后续的IO请求都是同步的. 将缓存写入磁盘时 ...
- MySQL数据库文件的移动和权限设置
新型数据库层出不穷,MySQL一幅日薄西山的样子.其实还有很多人或者偏爱.或者使用以前遗留的系统,仍然生活在MySQL的世界. 我也是有很久不用了,这个很久超过十年. 不过前几天有个朋友让我帮忙为他们 ...
- Python实战——基于股票的金融数据量化分析
说明:本文只是通过自己的已学知识对股票数据进行了一个简单的量化分析,只考虑了收盘情况,真实的量化交易中仅仅考虑收盘情况是不够的,还有很多的复杂因素,而且仅仅三年数据是不足以来指导真实的股票交易的,因此 ...
- jQuery 源码解析(二十六) 样式操作模块 样式详解
样式操作模块可用于管理DOM元素的样式.坐标和尺寸,本节讲解一下样式相关,样式操作通过jQuery实例的css方法来实现,该方法有很多的执行方法,如下: css(obj) ;参数 ...
- PHP 微信公众号/小程序获取openid,用户信息
1.获取code (获得openid的前置条件) 地址:https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redi ...
- 一起学Android之AsyncTask
概述 在Android开发中,为了方便我们在后台线程中执行操作,然后将结果发送给主线程,从而在主线程中进行UI更新等操作,Anddroid开发框架提供了一个助手类AsyncTask,它对Thread和 ...
- CSS样式继承性
CSS样式继承介绍 外层元素身上的样式会被内层元素所继承. 当内层元素身上的样式与外层的元素身上的样式相同时内层元素样式会覆盖外层元素样式. 并不是所有的样式都能够继承,只有文本与字体样式属性才能够被 ...