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. 老师说的都对 - Beta阶段博客作业

    第二小组Beta冲刺阶段博客目录 github 地址:PCES-Github 一.Scrum Meeting 1.第十周会议记录 2.第十一周会议记录 3.第十二周会议记录 二.测试报告 Beta阶段 ...

  2. Linux中jar包启动和jar包后台运行

    Linux 运行jar包命令如下: 方式一: java -jar shareniu.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? ...

  3. 并发编程~~~多线程~~~线程queue, 事件event,

    一 线程queue 多线程抢占资源,只能让其串行. 互斥锁 队列 import queue q = queue.Queue() # 先进先出 q = queue.LifoQueue() # 先进后出 ...

  4. partition by 与ROW_NUMBER()函数使用详解

    SQL Server数据库partition by 与ROW_NUMBER()函数使用详解 关于SQL的partition by 字段的一些用法心得 先看例子: if object_id('TESTD ...

  5. 华为eNSP路由交换实验-生成树之RSTP

    RSTP基础配置 实验拓扑图 实验步骤 1.基本配置 根据实验编址表进行相应的基本IP配置. 2.配置RSTP基本功能. (1)把生成树模式由默认的MSTP(华为交换机默认开启)改为RSTP. [FW ...

  6. pymysql用法,Python连接MySQL数据库

    Pymysql模块是专门用来操作mysql数据库的模块,使用前需要安装,安装指令:pip install pymysql 操作流程: 第一步:import pymysql 第二步:获取数据库的连接 , ...

  7. excel提取一类具有相似结构的部分数据,2种方式;数据——分列——分割符号/固定宽度;

    1.数据如同下图,这里我们需要提取 ¥...¥,也就是2¥及其中的内容: 鼠标选种某条数据,然后按Ctrl+A,则选种需要的所有数据:点击数据——分列:  2.根据分割符号分列:  3.选择合适的分隔 ...

  8. a minimum of subsistence

    A hundred years ago it was assumed and scientifically "proved" by economists that the laws ...

  9. Linux 部署 java1.8

    1.安装 查看java安装包 yum list | grep java 使用yum安装 yum install java-1.8.0-openjdk.x86_64 修改环境变量 vi /etc/pro ...

  10. ubuntu上编译和使用easy_profiler对C++程序进行性能分析

    本文首发于个人博客https://kezunlin.me/post/91b7cf13/,欢迎阅读最新内容! tutorial to compile and use esay profiler with ...