PyQt基础的综合示例

在这个综合示例中,我们将结合前面所学的内容,创建一个简单的 PyQt 应用程序,该程序具有以下功能:

  1. GUI 界面
  2. 数据库操作
  3. 网络通信
python 复制代码
from PyQt5.QtWidgets import QApplication, QPushButton, QVBoxLayout, QWidget
from PyQt5.QtSql import QSqlDatabase, QSqlQuery
from PyQt5.QtNetwork import QTcpSocket
from PyQt5.QtCore import QIODevice

def connect_to_database():
    db = QSqlDatabase.addDatabase("QSQLITE")
    db.setDatabaseName("mydatabase.db")
    return db.open()

def execute_query():
    query = QSqlQuery()
    query.exec_("CREATE TABLE IF NOT EXISTS people (id INTEGER PRIMARY KEY, name TEXT)")
    query.exec_("INSERT INTO people (name) VALUES ('John')")

def tcp_client():
    socket = QTcpSocket()
    socket.connectToHost("localhost", 8080)
    if socket.waitForConnected():
        socket.write(b"Hello, Server")
        if socket.waitForReadyRead():
            print("Received:", socket.readAll().data().decode())
        socket.close()

app = QApplication([])

window = QWidget()
layout = QVBoxLayout()

button_db = QPushButton('Connect to Database')
button_db.clicked.connect(connect_to_database)
layout.addWidget(button_db)

button_query = QPushButton('Execute Query')
button_query.clicked.connect(execute_query)
layout.addWidget(button_query)

button_network = QPushButton('Network Request')
button_network.clicked.connect(tcp_client)
layout.addWidget(button_network)

window.setLayout(layout)
window.show()

app.exec_()

这个示例程序创建了一个具有三个按钮的简单 GUI 界面。每个按钮都连接到一个槽函数,这些槽函数分别执行数据库连接、数据库查询和网络请求。

希望这个综合示例能帮助你更好地理解如何使用 PyQt 进行实际开发!

相关推荐
ん贤1 小时前
Go channel 深入解析
开发语言·后端·golang
changhong19864 小时前
如何在 Spring Boot 中配置数据库?
数据库·spring boot·后端
月月玩代码6 小时前
Actuator,Spring Boot应用监控与管理端点!
java·spring boot·后端
XPoet7 小时前
AI 编程工程化:Skill——给你的 AI 员工装上技能包
前端·后端·ai编程
码事漫谈7 小时前
从“功能实现”到“深度优化”:金仓数据库连接条件下推技术的演进之路
后端
码事漫谈7 小时前
数据库查询优化中的谓词下推策略与成本感知优化实践
后端
Amour恋空8 小时前
SpringBoot+Lombok+Logback实现日志
spring boot·后端·logback
廋到被风吹走8 小时前
【LangChain4j】特点功能及使用场景
后端·python·flask
毕设源码-邱学长8 小时前
【开题答辩全过程】以 基于Spring Boot的体育场地预约管理系统为例,包含答辩的问题和答案
java·spring boot·后端
青槿吖8 小时前
第二篇:告别XML臃肿配置!Spring注解式IOC/DI保姆级教程,从入门到真香
xml·java·开发语言·数据库·后端·sql·spring