欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

pyside写ui界面入门示例

程序员文章站 2022-04-19 09:13:58
pyside是一个免费的软件,与pyqt不同之处在于使用了lgpl,允许pyside免费的开发商业软件。 pyside有15个模块。这些模块支持对gui,多媒体,xml,网...

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>")