码迷,mamicode.com
首页 > 其他好文 > 详细

pyqt文档方法说明(不重点)

时间:2015-07-16 16:06:10      阅读:977      评论:0      收藏:0      [点我收藏+]

标签:

# -*- coding: cp936 -*-

import sys

from PyQt4 import QtCore, QtGui

 

class MyDialog(QtGui.QDialog):

        def __init__(self, parent=None):

                QtGui.QDialog.__init__(self, parent)

                self.quit = QtGui.QPushButton("Quit")

 

                self.change = QtGui.QPushButton("Change")

                self.change.setEnabled(False)

 

                # funny widget

                self.lcd = QtGui.QLCDNumber(2)

 

                self.slider = QtGui.QSlider(QtCore.Qt.Horizontal)

                self.slider.setRange(0, 99)

                self.slider.setValue(0)painter . drawPixmap(target , image , source);

def paintEvent(self,event):

        painter = QPainter(self)

        painter.drawPixmap(0,0,280,390,QPixmap("1.png"))

        painter.drawPixmap(300,0,280,390,QBitmap("1.png"))

 self.pix = QPixmap("1.png")

        self.resize(self.pix.size())

        self.setMask(self.pix.mask())

 

self.pix = QBitmap("2.png")

        self.resize(self.pix.size())

        self.setMask(self.pix)

         

    def paintEvent(self,event):

        painter = QPainter(self)

        painter.drawPixmap(0,0,self.pix.width(),self.pix.height(),QPixmap("3.jpg"))

 

lcd = QtGui.QLCDNumber(self)

sld = QtGui.QSlider(QtCore.Qt.Horizontal, self)

sld.valueChanged.connect(lcd.display)

sender 是发送信号的对象。 receiver 是接受信号的对象。而 slot 是回馈信号的方法。

重载方法

import sys

from PyQt4 import QtGui, QtCore

class Example(QtGui.QWidget):

    def __init__(self):

        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        self.setGeometry(300, 300, 250, 150)

        self.setWindowTitle(‘Event handler‘)

        self.show()

    def keyPressEvent(self, e):#这个表示重载方法

        if e.key() == QtCore.Qt.Key_Escape:

            self.close()

def main():

    app = QtGui.QApplication(sys.argv)

    ex = Example()

    sys.exit(app.exec_())

if __name__ == ‘__main__‘:

    main()

在我们的例子中,我们重新实现了 keyPressEvent() 。

 

def keyPressEvent(self, e):

    if e.key() == QtCore.Qt.Key_Escape:

        self.close()

 

sender() 方法知道了消息源

  def buttonClicked(self):

        sender = self.sender()

        self.statusBar().showMessage(sender.text() + ‘ was pressed‘)

self.statusBar().showMessage(‘Ready‘)状态栏

组件(Widget)是一个应用最基本的构件。PyQt4 中有大量的组件。按钮,选择框,滑块,列表等等

cb.toggle()

 

我们设置了窗口的标题,因此我们必须选中选择框。默认情况下,窗口的标题并没有设置,选择框也没有勾中。

 

                self.lineEdit = QtGui.QLineEdit()

 

                self.connect(self.quit, QtCore.SIGNAL("clicked()"),

                              QtGui.qApp, QtCore.SLOT("quit()"))

                self.connect(self.lineEdit, QtCore.SIGNAL("textChanged(const QString&)"),

                              self.enableChangeButton)

                self.connect(self.slider, QtCore.SIGNAL("valueChanged(int)"),

                              self.SliderChange)

                self.connect(self.change, QtCore.SIGNAL("clicked()"),

                              self.Change)

 

                self.rightLayout = QtGui.QVBoxLayout()

                self.rightLayout.addWidget(self.lineEdit)

                self.rightLayout.addWidget(self.change)

                 

                self.leftLayout = QtGui.QVBoxLayout()

                self.leftLayout.addWidget(self.lcd)

                self.leftLayout.addWidget(self.slider)

                 

                self.layout = QtGui.QHBoxLayout()

                self.layout.addWidget(self.quit)

                self.layout.addLayout(self.leftLayout)

                self.layout.addLayout(self.rightLayout)

                self.setLayout(self.layout);

        def enableChangeButton(self, text):

                self.change.setEnabled(text.isEmpty() == False)#重点

 

        def Change(self):

         value = int(self.lineEdit.text())

         self.lcd.display(value)

         self.slider.setValue(value)

 

        def SliderChange(self):

                value = self.slider.value()

                self.lcd.display(value)

                self.lineEdit.setText(str(value))

 

app = QtGui.QApplication(sys.argv)

dialog = MyDialog()

dialog.show()

sys.exit(app.exec_())

 

QListView类提供了一个列表或图标视图到模型
QTreeView则类提供了一个默认的模型/视图实现树形视图中
QTableView中的类提供了默认的模型/视图实现表视图。
QColumnView类提供了一个模型/视图实现列视图中
QTableWidget类提供了默认的模型基于物品的表视图
QTreeWidget类提供了使用预定义树模型的树视图
QListWidget类提供了一个基于项目的列表控件
QDeclarativeView类提供了一个小工具来显示一个Qt声明式的用户界面
QLine类提供了使用整数精度的二维矢量
QProgressBar部件提供水平或垂直进度条
QTextBrowser类提供了超文本浏览格式文本浏览器
QCalendarWidget类提供了一个每月按日历组件,允许用户选择一个日期
QLCDNumber插件播放一些带有LCD般的数字
QGraphicsView类提供了一个小工具,用于显示的内容QGraphicsScene
QGraphicsScene类提供了管理大量的2D图形项的表面上
QLABEL小部件提供了一个文本或图像的显示
VideoPlayer控件是用来进行视频回放
VolumeSlider插件提供了用于控制音频输出装置的音量的滑块
SeekSlider类提供了一个滑块为寻求在媒体流的位置
QWebView类提供了用于查看和编辑网页文件的小工具
而Qt.Vertical | Qt.Horizontal意味着它要在这两个方面的增长
QGridLayout类勾画出部件在网格中
formLayout,horizontalLayout,verticalLayout,verticalSlider,horizontalSlider,verticalScrollBar,horizontalScrollBar文档找不到信息
QDialogButtonBox类是一个小部件,呈现在布局是适合当前控件样式按钮
QCommandLinkButton小工具提供了Vista的风格命令链接按钮
QCheckBox控件提供了一个文本标签的复选框
QToolButton类提供了一个快速访问按钮,命令或选项,通常用于内部QToolBar
QToolBar类提供了一个可移动的面板,包含一组控件
QRadioButton小工具提供了一个单选按钮,文本标签
QPushButton窗口部件提供了一个命令按钮
QScrollArea类提供了一个滚动视图到另一个部
QGroupBox小部件提供一个带标题的分组框框架
QToolBox类提供了选项卡式窗口小部件项目的列
QTabWidget类提供了一个堆栈标签部件
QStackedWidget类提供了一个堆叠部件,其中只有一个部件是在同一时间可见
QAxWidget类是QWidget的 ,它包装一个ActiveX控件
QDateTimeEdit类提供了一个部件的编辑日期和时间
QDial类提供了一个圆形范围控制(如速度计或电位器
QTimeEdit类提供了一个部件的基础上,编辑时间QDateTimeEdit部件
QDateEdit类提供了一个小工具,用于编辑基于日期QDateTimeEdit部件
QComboBox表示widget是一个组合键,弹出的列表中
QFontComboBox widget是一个组合框,让用户选择字体系列
QTextEdit类提供用于编辑和显示两个平原和丰富的文本控件
QPlainTextEdit类提供用于编辑和显示纯文本的小工具
QSpinBox类提供了一个微调框控件
QDoubleSpinBox类提供了一个微调框小部件,需要加倍
QLineEdit中widget是一个单行的文本编辑器

 

pyqt文档方法说明(不重点)

标签:

原文地址:http://www.cnblogs.com/mhxy13867806343/p/3981276.html

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