python-分享篇-GUI界面开发-PyQt GUI

PyQt GUI

编写你的第一个PyQt GUI程序

import sys
from PyQt5.QtWidgets import QApplication, QWidget
app = QApplication(sys.argv) # 创建应用程序对象
window = QWidget()
window.resize(400, 300) # 设置窗口的大小
window.move(600, 300) # 设置窗口的位置
window.setWindowTitle(‘你好Qt!’) # 设置窗口标题
window.show() # 显示窗口
app.exec_() # 让应用程序进入主事件循环中

# coding=utf-8
# 代码文件:code/chapter3/3.2.3.py
# 编写你的第一个PyQt GUI程序
import sys
from PyQt5.QtWidgets import QApplication, QWidget

app = QApplication(sys.argv)                      # 创建应用程序对象

window = QWidget()
window.resize(400, 300)                           # 设置窗口的大小
window.move(600, 300)                             # 设置窗口的位置

window.setWindowTitle('你好Qt!')                  # 设置窗口标题
window.show()  # 显示窗口

app.exec_()    # 让应用程序进入主事件循环中

在这里插入图片描述

面向对象方式实现PyQt GUI程序

# coding=utf-8
# 代码文件:code/chapter3/3.2.4.py
# 面向对象方式实现PyQt GUI程序

import sys
from PyQt5.QtWidgets import QApplication, QWidget


class MyWindow(QWidget):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):
        self.resize(400, 300)               # 设置整窗口的大小
        self.move(600, 300)                 # 设置窗口的位置,

        self.setWindowTitle('你好Qt!')       # 设置窗口标题


def main():
    app = QApplication(sys.argv)             # 创建应用程序对象
    window = MyWindow()
    window.show()                            # 显示窗口
    app.exec_()


if __name__ == '__main__':
    main()

在这里插入图片描述

在窗口中添加控件

# coding=utf-8
# 代码文件:code/chapter3/3.3.py
# 在窗口中添加控件

import sys
from PyQt5.QtWidgets import *


class MyWindow(QWidget):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):
        self.resize(400, 300)                       # 设置整窗口的大小
        self.move(600, 300)                         # 设置窗口的位置

        self.setWindowTitle('添加控件!')            # 设置窗口标题

        label = QLabel(self)                        # 创建标签控件
        label.setText("Hello World!")               # 设置标签显示的文字
        label.move(180, 120)                        # 设置标签位置

        button = QPushButton(self)                  # 创建按钮控件
        button.setText("OK")                        # 设置按钮上显示的文字
        button.move(170, 160)                       # 设置按钮位置


def main():
    app = QApplication(sys.argv)                    # 创建应用程序对象
    window = MyWindow()

    window.show()                                   # 显示窗口
    sys.exit(app.exec_())


if __name__ == '__main__':
    main()

在这里插入图片描述

信号与槽机制

# coding=utf-8
# 代码文件:code/chapter3/3.4.1.py
#  信号与槽机制

import sys
from PyQt5.QtWidgets import *


class MyWindow(QWidget):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):
        self.resize(400, 300)
        self.move(600, 300)  #

        self.setWindowTitle('信号与槽机制')

        self.label = QLabel(self)
        self.label.setText("Hello World!")
        self.label.move(180, 120)

        button = QPushButton("OK", self)

        button.clicked.connect(self.click_success)  # 连接信号与槽
        button.move(170, 160)

    def click_success(self):                        # 槽函数
        self.label.setText("世界你好!")


def main():
    app = QApplication(sys.argv)
    window = MyWindow()
    window.show()
    sys.exit(app.exec_())


if __name__ == '__main__':
    main()

在这里插入图片描述

鼠标事件

# coding=utf-8
# 代码文件:code/chapter3/3.4.2.3.py
#  鼠标事件

import sys

from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QApplication, QWidget, QLabel


class MyWindow(QWidget):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):
        self.resize(400, 300)
        self.move(600, 300)

        self.setWindowTitle('鼠标事件')

        self.label = QLabel(self)
        self.label.setText("Hello World!")
        self.label.move(180, 120)

    # 重写鼠标按下函数
    def mousePressEvent(self, event):
        if event.button() == Qt.LeftButton:
            self.label.setText("鼠标左键按下")
        elif event.button() == Qt.RightButton:
            self.label.setText("鼠标右键按下")
        else:
            self.label.setText("鼠标未知按下")

    # 重写鼠标释放函数
    def mouseReleaseEvent(self, event):
        self.label.setText("鼠标释放")


def main():
    app = QApplication(sys.argv)
    window = MyWindow()
    window.show()
    sys.exit(app.exec_())


if __name__ == '__main__':
    main()

在这里插入图片描述

键盘事件

# coding=utf-8
# 代码文件:code/chapter3/3.4.3.py
#  键盘事件

import sys

from PyQt5.QtWidgets import QApplication, QWidget, QLabel


class MyWindow(QWidget):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):
        self.resize(400, 300)
        self.move(600, 300)

        self.setWindowTitle('键盘事件')

        self.label = QLabel(self)
        self.label.setText("Hello World!")
        self.label.move(100, 120)

        # 重写键盘按下函数
    def keyPressEvent(self, event):
        self.label.setText("键盘键按下")

    # 重写键盘释放函数
    def keyReleaseEvent(self, event):
        self.label.setText("键盘键释放")


def main():
    app = QApplication(sys.argv)
    window = MyWindow()
    window.show()
    sys.exit(app.exec_())


if __name__ == '__main__':
    main()

在这里插入图片描述

相关推荐

  1. python图表用户界面gui)的选择

    2024-02-05 09:56:01       12 阅读
  2. Python图形界面(GUI)Tkinter笔记(目录)

    2024-02-05 09:56:01       14 阅读
  3. Python实现通过GUI界面,进行自动化“网络监控”

    2024-02-05 09:56:01       11 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-05 09:56:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-05 09:56:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-05 09:56:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-05 09:56:01       18 阅读

热门阅读

  1. 十大设计模式总结版

    2024-02-05 09:56:01       24 阅读
  2. 算法题目题单——图论

    2024-02-05 09:56:01       29 阅读
  3. C#、Unity:Time 时间与计时

    2024-02-05 09:56:01       19 阅读
  4. 软件架构风格:您的系统设计指南

    2024-02-05 09:56:01       30 阅读
  5. 简单介绍Spring Security 的认证机制和授权机制

    2024-02-05 09:56:01       30 阅读
  6. k8s版本升级到1.24.x

    2024-02-05 09:56:01       34 阅读
  7. python实现音频转文本

    2024-02-05 09:56:01       31 阅读