码迷,mamicode.com
首页 > 编程语言 > 详细

Python-PyQt4学习笔记

时间:2015-07-09 12:43:20      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:

1.每个应用必须创建一个 QtGui.QApplication(sys.argv), 此时 QtGui.qApp 为此应用的实例

app = QtGui.QApplication(sys.argv)
sys.exit(app.exec_()); #因为exec是关键字, 所以 Qt 用的 exec_, app.exec_() 表示进入循环

2.所有界面图形类都继承自 QtGui.QWidget, 比如 QtGui.QPushButton 等都可以使用 setGeometry() 等方法, QWidget 如果没有指定父, 那么它就是顶级窗口 a

3.QtGui.QPushButton(‘Quit‘, widget), 创建一个 QPushButton 实例, 放在 widget 上

4.PyQt4 事件处理系统建立在 信号-槽 的基础上

  槽详解可以参考以下两篇文章,  PyQt4信号和槽用法总结, 信号和槽详解

  信号与槽机制作为 Qt 最重要的特性, 提供了任意两个 Qt 对象之间的通信机制, 信号会在某个特定情况或动作下被触发, 槽是用于接收并处理信号的函数

  每个Qt对象都包含预定的信号和槽, 当一某一特定事件发生时, 一个信号被发射, 与信号相关联的槽则会响应信号完成相应的处理

  信号与槽机制常用的连接方式为: connect(Object1,SIGNAL(signal),Object2,SLOT(slot)), 其中槽函数可以是 PyQt 自带的的槽函数, 也可以是自定义的槽函数(@QtCore.pyqtSlot()), 甚至是任何 Python 可以调用的函数

w.connect(btn, QtCore.SIGNAL("clicked()"), QtGui.qAPP, QtCore.SLOT("quit()"))

  或

#coding:utf-8

from PyQt4 import QtGui, QtCore

app = QtGui.QApplication([])
w = QtGui.QWidget()

def showMsg():
    QtGui.QMessageBox.information(w, u"信息", u"ok")

btn = QtGui.QPushButton(u"点我", w)
w.connect(btn, QtCore.SIGNAL("clicked()"), showMsg)
#或者 btn.clicked.connect(showMsg) 
w.show()
app.exec_()

 

   button 对象的 clicked() 信号连接到 showMsg 函数, 也就是说 ShowMsg 响应了一个按钮的点击事件

 aa

Python-PyQt4学习笔记

标签:

原文地址:http://www.cnblogs.com/JohnABC/p/4632587.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!