python写gui应用程序,python写gui界面
PyQt4前言1的一些例子。PyQt4是什么?第二,用PyQt4写入门程序。1.显示小窗口。2.显示程序图标。3.显示提示信息。4.关上窗户。5.消息窗口。6.将窗口放在屏幕中间进行总结。
Pyqt作为编写简单GUI程序的工具,在各种app中都有使用。在这一章中,我们将学习Pyqt并介绍如何创建最简单的GUI程序。
1.PyQt4是什么?PyQt是一个用于创建GUI应用程序的工具包。它是Python编程语言和成功的Qt的混合体。Qt库是这个星球上最强大的GUI库之一。PyQt的实现被视为Python的一个模块。它由300多个类和近6000个函数和方法组成。作为一个跨平台的工具包,PyQt可以在所有主流操作系统上运行。
第二,用PyQt4写一个入门程序。1.小窗口代码如下:
importsysfromyqt 4 importqtguiapp=Qt GUI . QA application(sys . argv)widget=Qt GUI . q widget)widget . resize(250,150)widget . setwindowtitle((window))widget . show)(sys . exit)app . exec _))
import sys、from PyQt4 import QtGui:每个PyQt4程序都需要QtGui模块中包含的应用程序对象。sys.argv参数是命令行参数的列表。Python脚本可以从shell中运行,您可以根据参数选择如何启动脚本。
http://www。Sina.com/:组件是所有PyQt4用户界面类的父类。这里没有使用参数的默认构造函数。没有继承其他类。没有父级的小部件称为窗口。
app = QtGui.QApplication(sys.argv):resize))方法可以调整小部件的大小。此设置宽250像素,高150像素。
widget = QtGui.QWidget():该语句设置标题栏中显示的小部件的标题。
widget.resize(250, 150):show))方法在屏幕上显示小部件。
widget.setWindowTitle(“窗口”):最后进入程序主循环。办案从本职工作的文章开始。主循环接收事件消息,并将其分发给程序的各个部分。当调用exit(或放弃可配置部分)时,可配置循环结束。Sys.exit))方法来退出程序,可以保证程序完全退出。在这种情况下,系统的环境变量记录程序如何结束。您可能想知道为什么exec_()方法带有下划线。这是因为exec是Python的关键词。为了避免冲突,PyQt将替换为exec_()。
2.程序图标代码如下:
importsysfrommyqt 4 importqtguiclassicon(Qt GUI . q组件):def_init_(self,Parent=None)3360 Qt GUI . q widget 150)self . set window title(icon)(self . setwindowicon)Qt GUI . qicon(icon/web . png))app=Qt GUI . qaplicicon pyqt编程是面向对象的。
面向对象编程中最重要的是类、属性和方法。在上面的代码中,我们创建了一个继承Qt GUI.q组件类的新类。所以需要调用两个构造函数的构造函数,——Icon和继承Qt GUI.q组件类的构造函数。
3.要显示提示信息代码,请执行以下步骤:
从pyqt 4导入sys导入Qt GUI,qtcoreclasstooltip (Qt GUI.q组件):def__init_(self,parent=none)33666150)self . set window title( tooltip )self . set tooltip) this)。
is abQWidget/bwidget) QtGui。QToolTip.setFont(QtGui。QFont(OldEnglish ,10))self . setwindowicon(Qt GUI . qicon( icon/web . png )app=Qt GUI . QA application(sys . argv)tooltip=tooltip()tooltip . show()sys . exit(app . exec _())在这个例子中,我们是一个widget.show():要创建工具提示,需要调用setToolTip()方法。此方法接受富文本格式的参数。self.setToolTip(“This is aQWidgetwidget”):因为默认的QToolTip字体看起来很扯淡,所以我们可以通过这个语句设置想要的字体和大小。
4.关上窗户。关闭窗口的一个更简单的方法是单击窗口右上角的X标记。接下来用代码演示如何关闭程序,简单介绍一下Qt的信号和槽机制。
代码如下:
从PyQt4导入系统QtGui,QtCoreclass QuitButton(QtGui .QWidget): def __init__(self,parent=None):Qt GUI。q widget。_ _ init _ _(self,parent) self.setGeometry(300,300,250,150)self。setwindowtitle(退出按钮)quit=Qt GUI .q按钮(关闭,self)退出. setGeometry(10,10,60,35) self.connect(退出,QtCore .SIGNAL(clicked()),QtGui.qApp,QtCore .SLOT(quit()))app=QtGui .q应用程序(系统。argv)QB=退出按钮()QB。show()sys。退出(app。执行_())QtGui.QToolTip.setFont(QtGui.QFont(“OldEnglish”, 10)):这两句用来创建一个按钮并将其放在窗口部件上,就像我们将窗口放在屏幕上一样。
quit = QtGui.QPushButton(“Close”, self),quit.setGeometry(10, 10, 60, 35):PyQt4的事件处理系统建立在信号-槽机制之上。如果我们单击放弃按钮,那么已单击()就会被触发,槽函数可以是PyQt自带的槽函数,也可以是任何计算机编程语言可以调用的函数等QtCoreQObject.connect()方法可以将信号和槽函数连接起来。
5.消息窗口默认情况下。我们单击窗口右上角的X标记,就会关闭窗口。但是我们想要有个关闭提示。接下来我们将展示如何用代码来提示关闭程序。
代码如下:
从PyQt4导入[计]系统复制命令(system的简写)导入模块类消息框(Qt图形用户界面.QWidget): def __init__(self,parent=None):Qt GUI。q widget。_ _ init _ _(self,parent) self.setGeometry(300,300,250,150) self.setWindowTitle(消息框)def closeEvent(self,event): reply=QtGui .QMessageBox.question(self, Message ,您确定要退出吗?,QtGui .提示框是的QtGui .QMessageBox。No)如果reply==QtGui .QMessageBox。是:事件。accepy()else:event。ignore()app=Qt GUI .q应用程序(系统。argv)QB=MessageBox()QB。show()sys。退出(app。exec _())如果我们关闭窗口,QCloseEvent事件就会被触发,通过回答语句,我们可以显示一个带有(是/否)的消息窗口,提醒是否要关闭窗口窗。
6.将窗口放置在屏幕中间代码如下:
从PyQt4导入系统导入模块类中心(Qt图形用户界面.QWidget): def __init__(self,parent=None):Qt GUI。q widget。_ _ init _ _(自身,父)自身。setwindowtitle( center )self。调整自身大小(250,150)。center()def center(self):screen=Qt GUI .QDesktopWidget().屏幕几何()大小=自身。几何()自我。移动((屏幕。width()-size。width())/2,(屏幕。height()-size。height())/2)app=Qt GUI .q应用程序(系统。argv)QB=Center()QB。show()sys。退出(app。执行_())self.connect(quit, QtCore.SIGNAL(“clicked()”), QtGui.qApp, QtCore.SLOT(“quit()”)):用来设置窗口窗口的大小;self.resize():该语句用来计算显示器的分辨率(屏幕。宽度。屏幕。身高);screen = QtGui.QDesktopWidget().screenGeometry():该语句用来获取窗口窗口的大小(size.width,size。身高);size = self.geometry():该语句将窗口移动到屏幕的中间位置。
总结总的来讲PyQt的使用是比较简单的,也易于上手,对于刚接触过PyQt的同学来讲是很值得入门学习。至于以后要学到什么样的程度,那就需要继续往下学习了。
以上就是今天要讲的内容,本文仅仅简单介绍了PyQt的使用,而PyQt提供了大量能使我们快速便捷地处理数据的函数和方法。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。