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 不关闭控制台的实现方法
Oct 23 Python
python抓取网页图片示例(python爬虫)
Apr 27 Python
python执行get提交的方法
Apr 29 Python
python3读取MySQL-Front的MYSQL密码
May 03 Python
Python 多线程Threading初学教程
Aug 22 Python
Django使用Mysql数据库已经存在的数据表方法
May 27 Python
python使用pymongo操作mongo的完整步骤
Apr 13 Python
用Python调用win命令行提高工作效率的实例
Aug 14 Python
jupyter notebook读取/导出文件/图片实例
Apr 16 Python
Python使用Chrome插件实现爬虫过程图解
Jun 09 Python
python爬取网易云音乐热歌榜实例代码
Aug 07 Python
PyQt5实现多张图片显示并滚动
Jun 11 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
一个MYSQL操作类
2006/11/16 PHP
php+js实现异步图片上传实例分享
2014/06/02 PHP
PHP实现自动识别原编码并对字符串进行编码转换的方法
2016/07/13 PHP
用js实现的一个Flash滚动轮换显示图片代码生成器
2007/03/14 Javascript
根据鼠标的位置动态的控制层的位置
2009/11/24 Javascript
奉献给JavaScript初学者的编写开发的七个细节
2011/01/11 Javascript
jquery select(列表)的操作(取值/赋值)
2011/03/16 Javascript
Jquery实现$.fn.extend和$.extend函数
2016/04/14 Javascript
Vue方法与事件处理器详解
2016/12/01 Javascript
bootstrap模态框消失问题的解决方法
2016/12/02 Javascript
jQuery实现表格元素动态创建功能
2017/01/09 Javascript
微信小程序教程系列之视图层的条件渲染(10)
2017/04/19 Javascript
react native带索引的城市列表组件的实例代码
2017/08/08 Javascript
微信小程序使用radio显示单选项功能【附源码下载】
2017/12/11 Javascript
anime.js 实现带有描边动画效果的复选框(推荐)
2017/12/24 Javascript
详解如何构建Promise队列实现异步函数顺序执行
2018/10/23 Javascript
详解vue-cli中使用rem,vue自适应
2019/05/06 Javascript
layui动态表头的实现代码
2019/08/22 Javascript
JavaScript实现留言板案例
2020/03/17 Javascript
解决python使用open打开文件中文乱码的问题
2017/12/29 Python
Python Grid使用和布局详解
2018/06/30 Python
python爬虫之线程池和进程池功能与用法详解
2018/08/02 Python
Python函数any()和all()的用法及区别介绍
2018/09/14 Python
使用python os模块复制文件到指定文件夹的方法
2019/08/22 Python
python3 dict ndarray 存成json,并保留原数据精度的实例
2019/12/06 Python
Python: 传递列表副本方式
2019/12/19 Python
python如何通过pyqt5实现进度条
2020/01/20 Python
django实现模型字段动态choice的操作
2020/04/01 Python
浅析python中的del用法
2020/09/02 Python
个人对照检查材料
2014/02/12 职场文书
求职自荐信的格式
2014/04/07 职场文书
小学捐书活动总结
2014/07/05 职场文书
领导干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
党风廉政教育心得体会2016
2016/01/22 职场文书
2019学生会干事辞职信
2019/06/27 职场文书
人民币符号
2022/02/17 杂记