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中__call__方法示例分析
Oct 11 Python
解析Python编程中的包结构
Oct 25 Python
使用Python实现windows下的抓包与解析
Jan 15 Python
Python简单实现网页内容抓取功能示例
Jun 07 Python
python3解析库lxml的安装与基本使用
Jun 27 Python
Python3爬虫全国地址信息
Jan 05 Python
Python实现打砖块小游戏代码实例
May 18 Python
Python 获取 datax 执行结果保存到数据库的方法
Jul 11 Python
基于python3 pyQt5 QtDesignner实现窗口化猜数字游戏功能
Jul 15 Python
Python通过4种方式实现进程数据通信
Mar 12 Python
Python中glob库实现文件名的匹配
Jun 18 Python
Python必备技巧之字符数据操作详解
Mar 23 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中flush()、ob_flush()、ob_end_flush()的区别介绍
2013/02/17 PHP
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
2014/11/18 PHP
PHP实现二维数组根据key进行排序的方法
2016/12/30 PHP
PHP实现的随机红包算法示例
2017/08/14 PHP
PHP通过curl获取接口URL的数据方法
2018/05/31 PHP
php判断某个方法是否存在函数function_exists (),method_exists()与is_callable()区别与用法解析
2020/04/20 PHP
学习ExtJS table布局
2009/10/08 Javascript
js实现带搜索功能的下拉框实时搜索实时匹配
2013/11/05 Javascript
浅谈js多维数组和hash数组定义和使用
2016/07/27 Javascript
Jquery组件easyUi实现表单验证示例
2016/08/23 Javascript
js实现一个可以兼容PC端和移动端的div拖动效果实例
2016/12/09 Javascript
利用jquery禁止外层滚动条的滚动
2017/01/05 Javascript
JavaScript观察者模式(publish/subscribe)原理与实现方法
2017/03/30 Javascript
jQuery开源组件BootstrapValidator使用详解
2017/06/29 jQuery
vue axios用法教程详解
2017/07/23 Javascript
浅谈vue+webpack项目调试方法步骤
2017/09/11 Javascript
解决vue router组件状态刷新消失的问题
2018/08/01 Javascript
默认浏览器设置及vue自动打开页面的方法
2018/09/21 Javascript
vue实现瀑布流组件滑动加载更多
2020/03/10 Javascript
深入解析Python中的lambda表达式的用法
2015/08/28 Python
用virtualenv建立多个Python独立虚拟开发环境
2017/07/06 Python
在python3环境下的Django中使用MySQL数据库的实例
2017/08/29 Python
python使用Pandas库提升项目的运行速度过程详解
2019/07/12 Python
python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法
2019/08/27 Python
Python使用QQ邮箱发送邮件报错smtplib.SMTPAuthenticationError
2019/12/20 Python
python def 定义函数,调用函数方式
2020/06/02 Python
Python函数的迭代器与生成器的示例代码
2020/06/18 Python
在Ubuntu中安装并配置Pycharm教程的实现方法
2021/01/06 Python
中国跨镜手机配件批发在线商店:TVC-Mall
2019/08/20 全球购物
VisionPros美国站:加拿大在线隐形眼镜和眼镜零售商
2020/02/11 全球购物
师范生教师实习自我鉴定
2013/09/27 职场文书
法制报告会主持词
2014/04/02 职场文书
2014年幼儿园后勤工作总结
2014/11/10 职场文书
2015年行政人事部工作总结
2015/05/13 职场文书
nginx安装以及配置的详细过程记录
2021/09/15 Servers
Python matplotlib安装以及实现简单曲线的绘制
2022/04/26 Python