pyside写ui界面入门示例


Posted in Python onJanuary 22, 2014

PySide是一个免费的软件,与PyQt不同之处在于使用了LGPL,允许PySide免费的开发商业软件。

PySide有15个模块。这些模块支持对GUI,多媒体,XML,网络以及数据库进行操作。本教程的目的主要是学习其中的两个模块:QtCore和QtGui。

QtCore是非界面功能模块,主要对文件目录,数据类型,输入输出流,url以及线程等提供支持。QtGui提供了对常见界面元素的支持,例如,对话框,窗口,状态栏,工具栏等等。

首先从Hello world开始

#!/usr/bin/python# Import PySide classes
import sys
from PySide.QtCore import *
from PySide.QtGui import *
 
# Create a Qt application
app = QApplication(sys.argv)
# Create a Label and show it
label = QLabel("Hello World")
label.show()
# Enter Qt application main loop
app.exec_()
sys.exit()

编写PySide的桌面应用,首先要导入QtCore和QtGui,因为这些类包含了应用中主要功能。QtGui包含界面元素,QtCore包含处理信号和槽的函数等等。在导入模块完成之后,需要创建QApplication的对象,该对象需要从命令行中接受参数,因此需要想QApplication中传递sys.argv。然后,为了让Hello world顺利出现,需要给一个QLabel对象。最后调用show方法显示label。

app.exec_()将会进入Qt的主循环中不停的轮询侦听信号,接受到信号后,就寻找与处理信号的句柄即槽函数。

sys.exit() 就是退出。

Tips :

最后两句一般写成: sys.exit(app.exec_())

这里,之所以写成app.exec_() 而不是app.exec() 是因为exec是python中的关键字,所以Qt使用exec_避开。

另外,在PySide中可以使用html标签使内容更加丰富例如:

label = QLabel("<font color=red size=40>Hello World</font>")
Python 相关文章推荐
详解Python命令行解析工具Argparse
Apr 20 Python
深入分析python中整型不会溢出问题
Jun 18 Python
Python 保存矩阵为Excel的实现方法
Jan 28 Python
详解Python的循环结构知识点
May 20 Python
python实现点击按钮修改数据的方法
Jul 17 Python
pytorch 修改预训练model实例
Jan 18 Python
基于matplotlib中ion()和ioff()的使用详解
Jun 16 Python
python适合做数据挖掘吗
Jun 16 Python
Django创建一个后台的基本步骤记录
Oct 02 Python
Python 获取异常(Exception)信息的几种方法
Dec 29 Python
Python列表删除重复元素与图像相似度判断及删除实例代码
May 07 Python
Python还能这么玩之只用30行代码从excel提取个人值班表
Jun 05 Python
pyqt和pyside开发图形化界面
Jan 22 #Python
python检测lvs real server状态
Jan 22 #Python
python使用rsa加密算法模块模拟新浪微博登录
Jan 22 #Python
忘记ftp密码使用python ftplib库暴力破解密码的方法示例
Jan 22 #Python
使用python的chardet库获得文件编码并修改编码
Jan 22 #Python
使用go和python递归删除.ds store文件的方法
Jan 22 #Python
python学习手册中的python多态示例代码
Jan 21 #Python
You might like
PHP simple_html_dom.php+正则 采集文章代码
2009/12/24 PHP
PHP自定义函数收代码
2010/08/01 PHP
PHP中PDO的错误处理
2011/09/04 PHP
浅析linux下apache服务器的配置和管理
2013/08/10 PHP
PHPExcel读取EXCEL中的图片并保存到本地的方法
2015/02/14 PHP
PHP浮点数精度问题汇总
2015/05/13 PHP
php使用PDO执行SQL语句的方法分析
2017/02/16 PHP
PHP实现登录验证码校验功能
2018/05/17 PHP
json对象转字符串如何实现
2012/12/02 Javascript
用显卡加速,轻松把笔记本打造成取暖器的办法!
2013/04/17 Javascript
js运动框架_包括图片的淡入淡出效果
2013/05/11 Javascript
基于jquery实现的自动补全功能
2015/03/12 Javascript
jQuery根据元素值删除数组元素的方法
2015/06/24 Javascript
JavaScript获取客户端IP的方法(新方法)
2016/03/11 Javascript
Vue 兄弟组件通信的方法(不使用Vuex)
2017/10/26 Javascript
浅谈Vue2.0父子组件间事件派发机制
2018/01/08 Javascript
解决Vue不能检测数组或对象变动的问题
2018/02/24 Javascript
详解webpack 热更新优化
2018/09/13 Javascript
如何实现echarts markline标签名显示自己想要的
2020/07/20 Javascript
Python中apply函数的用法实例教程
2014/07/31 Python
python开发中range()函数用法实例分析
2015/11/12 Python
Python基于datetime或time模块分别获取当前时间戳的方法实例
2019/02/19 Python
33个Python爬虫项目实战(推荐)
2019/07/08 Python
Python发送邮件的实例代码讲解
2019/10/16 Python
wxpython多线程防假死与线程间传递消息实例详解
2019/12/13 Python
python3实现网页版raspberry pi(树莓派)小车控制
2020/02/12 Python
详解Pymongo常用查询方法总结
2021/01/29 Python
经济学人订阅:The Economist
2018/07/19 全球购物
程序集与命名空间有什么不同
2014/07/25 面试题
C#中有没有静态构造函数,如果有是做什么用的?
2016/06/04 面试题
新领导上任欢迎词
2014/01/13 职场文书
美术兴趣小组活动总结
2014/07/07 职场文书
党员干部对十八届四中全会的期盼
2014/10/17 职场文书
详解前端任务构建利器Gulp.js使用指南
2021/04/30 Javascript
Python作用域和名称空间的详细介绍
2022/04/13 Python
Win2008系统搭建DHCP服务器
2022/06/25 Servers