zoukankan      html  css  js  c++  java
  • PyQt 5的基本功能

    PyQt5常用的模块

    PyQt5的类别分为几个模块,包括:

    QtCore:包含非核心的GUI功能,此模块用于处理时间、文件和目录、各种数据类型、流、URL、MIME类型、线程或进程

    QtGui:包括窗口系统集成、事件处理、二维图形、基本成像、字体和文本

    QtWidgets:基本控件都位于pyqt5.qtwidgets模块中,模块包含创造经典桌面风格的用户界面提供了一套UI元素的类

    QtMultimedia:包括的类来处理多媒体内容和API来访问相机和录音机的功能

    Qtbluetooth:模块包含类的扫描设备和连接并与他们互动。描述模块包含了网络编程的类。这些类便于TCP和IP和UDP客户端和服务器的编码,使网络编程更容易和更便携。
    Qtpositioning:包含类的利用各种可能的来源,确定位置,包括卫星、Wi-Fi、或一个文本文件。
    Enginio:模块实现了客户端库访问Qt云服务托管的应用程序运行时。
    Qtwebsockets:模块包含实现WebSocket协议类。
    QtWebKit:包含一个基于Webkit2图书馆Web浏览器实现类。
    Qtwebkitwidgets:包含的类的基础webkit1一用于qtwidgets应用Web浏览器的实现。
    QtXml:包含与XML文件的类。这个模块为SAX和DOM API提供了实现。
    QtSvg:模块提供了显示SVG文件内容的类。可伸缩矢量图形(SVG)是一种描述二维图形和图形应用的语言。
    QtSql:模块提供操作数据库的类。
    QtTest:包含的功能,使pyqt5应用程序的单元测试

    PyQt5常用的模块函数

    app = QApplication(sys.argv)  

    # 每一个pyqt5应用程序必须创建一个应用程序的对象,

    # sys.argv参数是一个列表,从命令行输入参数

    # 因此在函数开始,要导入QApplication,from PyQt5.QtWidgets import QApplication

    w = QWidget()

    # 创键窗口实例

    # QWidget是一套用户界面的类

    # 在开始要要导入QWidget,from PyQt5.QtWidgets import QWidget

    w.resize(800,150)

    # resize()方法调整窗口的大小,单位像素,原点在窗口的左上角顶点

    w.move(800,400)

    # move()方法移动窗口在屏幕的位置,单位像素,原点左边在屏幕的左上角顶点

    w.setWindowTitle("我是窗口标题")

    # 设置窗口标题

    w.show()

    # 显示在屏幕上

    sys.exit(app.exec_())

    # exit()方法保证程序干净退出,加下划线是因为exec是一个python关键词,所以用exec_()代替

    PyQt5都会使用下列OOP面向对象编程的框架

    import sys
    from PyQt5.QtWidgets import QApplication, QWidget
    class mywindow(QWidget):
        def __init__(self):
            super().__init__()
            self.initUI()    # 界面交给initUI方法
        def initUI(self):
            ....
            ...
            ...
    if __name__ == '__main__':
        app = QApplication(sys.argv)    # 创建应用程序对象
        ex = mywindow()
        ex.show()
        sys.exit(app.exec_())

    self.setGeometry(800, 400, 200, 200)

    # 设置窗口的位置大小

    self.setWindowIcon(QIcon('web.png'))

    # 在函数开头要导入from PyQt5.QtGui import QIcon

    # 设置窗口的图标,引用当前目录下的web.png图片

    QToolTip.setFont(QFont('Time New Roman',10))

    # 工具提示要导入from PyQt5.QtWidgets import QToolTip

    # 字体要导入from PyQt5.QtGui import QFont

    # 设置工具提示的字体,这里设置成Time New Roman,10号字体

    self.setToolTip('This is a <b>QWidget</b> widget')

    # 创建一个提示,使用setToolTip()方法,<b>title</b>,title会被加粗

    btn = QPushButton('Button',self)

    btn.setToolTip('This is a <b>QPushButton</b> widget')

    # 创建一个按钮QPushButton,并命名为Button

    # 将他设置工具提示settooltip

    btn.resize(btn.sizeHint())

    # 将按钮设置为默认尺寸btn.sizeHint()

    btn.clicked.connect(QCoreApplication.instance().quit)

    # 绑定按钮事件为quit退出

    def closeEvent(self, event):
        reply = QMessageBox.question(self, 'Message',"Are you sure to quit?", QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
        if reply == QMessageBox.Yes:
            event.accept()  # 同意even请求
        else:
            event.ignore()  #忽略事件

    # 要导入from PyQt5.QtWidgets import QMessageBox

    # 关闭窗口会触发QCloseEvent,重写QWidget类中的closeEvent关闭窗口函数

    # 第一个字符串为窗口标题。第二个字符串消息对话框中显示的文本。第三个参数指定按钮的组合出现在对话框中。最后一个参数是默认按钮,这个是默认的按钮焦点

    # 最后处理返回值,如果点击yes按钮,关闭小部件并终止应用程序,否则我们忽略关闭事件

    # 控制窗口显示在屏幕中心的方法
    # 获得窗口
    def center(self):
        qr = self.frameGeometry()   # 获得屏幕中心点
        cp = QDesktopWidget().availableGeometry().center()  # 显示到屏幕中心
        qr.moveCenter(cp)
        self.move(qr.topLeft())

    # 要导入from PyQt5.QtWidgets import QDesktopWidget

    # QtGui,QDesktopWidget类提供了用户的桌面信息,包括屏幕大小。

  • 相关阅读:
    Ajax一个好用简单框架Ajax.dll_________推荐
    米亚罗、理县、都江堰和青城山的灾前照片
    PlatForm在国家卫星气象中心
    CN Grid 项目
    IDL与matlab比较【转】
    家乡宁国
    ISPRS感受
    .NET 连接 Oracle
    编程实现Google Earth和ArcGIS的联动[demo]
    IDL 与 外部语言的几种集成方式(一)——connector
  • 原文地址:https://www.cnblogs.com/LXP-Never/p/9527961.html
Copyright © 2011-2022 走看看