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)
 

编写pyFormUI程序时,要做的就是在xml中定义界面布局, 然后对控件添加处理。
如果还有问题未能得到解决,搜索887934385交流群,进入后下载资料工具安装教程等。最后,感谢观看!

简单的Python GUI界面框架的更多相关文章

  1. 简单的python GUI例子

    写一个简单的界面很容易,即使是什么都不了解的情况下,这个文本转载了最简单的界面编写,下个文本介绍了TK的简单但具体的应用 在python中创建一个窗口,然后显示出来. from Tkinter imp ...

  2. 一个简单的python线程池框架

    初学python,实现了一个简单的线程池框架,线程池中除Wokers(工作线程)外,还单独创建了一个日志线程,用于日志的输出.线程间采用Queue方式进行通信. 代码如下:(不足之处,还请高手指正) ...

  3. Python GUI界面编程

    常用GUI框架 wxPython 安装wxPython pip install -U wxPython C:\Users> pip install -U wxPython Collecting ...

  4. Python GUI界面开发环境配置:Pycharm+PyQt5

    通过DoS命令行执行如下命令,可能需要管理员权限. 检查Python版本:python 更新pip版本:python -m pip install --upgrade pip 安装PyQt5: pip ...

  5. Flask-最简单的Python http服务框架使用

    环境准备 Python + pip + Flask sudo easy_install pip sudo pip install flask 代码如下(做了个jieba分词的服务) # encodin ...

  6. Python GUI编程(Tkinter) windows界面开发

    Python实现GUI简单的来说可以调用Tkinter库,这样一般的需求都可以实现,显示简单的windows窗口代码如下: python_gui.py 1 #!C:\Python27\python.e ...

  7. Python 图形界面(GUI)设计

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

  8. python图形界面(GUI)设计

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

  9. python GUI实战项目——tkinter库的简单实例

    一.项目说明: 本次通过实现一个小的功能模块对Python GUI进行实践学习.项目来源于软件制造工程的作业.记录在这里以复习下思路和总结编码过程.所有的源代码和文件放在这里: 链接: https:/ ...

随机推荐

  1. leetcode动态规划--基础题

    跳跃游戏 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个位置. 思路 根据题目意思,最大跳跃距离,说明可以跳0--n ...

  2. Python元组是什么

    引出 在使用Python过程中,列表.集合和字典是比较常用的数据结构. 列表简单说就是数组,不对,它就是数组 集合就是去重的元素结构,和JAVA中的set一样 字典就是一个key-value的键值对, ...

  3. center----Iframe 用法的详细讲解

    把iframe解释成“浏览器中的浏览器“很是恰当 <iframe frameborder=0 width=170 height=100 marginheight=0 marginwidth=0 ...

  4. SQL Server事务复制(sql 2008 r2)

    一.环境准备 1.两个虚拟服务器 主机1:XINXIBU01  作为发布和分发服务器   主 机2:XINXIBU02 192.168.1.160  作业阅服务器 2.SQL SERVER sql 2 ...

  5. ReactNative: 使用尺寸类Dimensions获取屏幕尺寸

    一.简介 在前面创建使用组件时,虽然使用的都是伸缩盒子布局,但是很少使用宽高来进行绝对定位.在iOS中可以通过UIScreen控件获取当前屏幕的宽高,同样地,在RN中提供了一个尺寸组件Dimensio ...

  6. PHP捕获异常register_shutdown_function和error_get_last的使用

    register_shutdown_function 注册一个会在php中止时执行的函数,注册一个 callback ,它会在脚本执行完成或者 exit() 后被调用. error_get_last ...

  7. python __getattr__和 __getattribute__

    __getattr__ 这个魔法函数会在类中查找不到属性时调用 class User: def __init__(self): self.info = 1 def __getattr__(self, ...

  8. PAT 1005 Spell It Right 字符串处理

    Given a non-negative integer N, your task is to compute the sum of all the digits of N, and output e ...

  9. 传统jdbc存在的问题总结

    1.数据库连接创建.释放频繁造成系统资源浪费,影响系统性能,可使用数据库连接池解决此问题. 2.sql语句中在代码中硬编码,代码不易维护,sql变动需要改变java代码. 3.使用preparedSt ...

  10. ENDIAN的由来及BIG-EDIAN 和LITTLE-ENDIAN(转)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/kingmax54212008/arti ...