当前位置: 首页 > news >正文

有网站源程序怎么做网站后台湖南有实力seo优化哪家好

有网站源程序怎么做网站后台,湖南有实力seo优化哪家好,动态网站建设工资,漳州网站开发目录 专栏导读1、库的介绍PyQt6的主要特点包括:使用PyQt6开发应用程序的一般步骤:库的安装 2、设计窗口设计列表视图设计输入框控件与按钮设计布局listView的简单样式增删查改函数 完整代码总结 专栏导读 🌸 欢迎来到Python办公自动化专栏—P…

目录

  • 专栏导读
  • 1、库的介绍
    • PyQt6的主要特点包括:
    • 使用PyQt6开发应用程序的一般步骤:
    • 库的安装
  • 2、设计窗口
    • 设计列表视图
    • 设计输入框控件与按钮
    • 设计布局
    • listView的简单样式
    • 增删查改函数
  • 完整代码
  • 总结

专栏导读

请添加图片描述

  • 🌸 欢迎来到Python办公自动化专栏—Python处理办公问题,解放您的双手

  • 🏳️‍🌈 博客主页:请点击——> 一晌小贪欢的博客主页求关注

  • 👍 该系列文章专栏:请点击——>Python办公自动化专栏求订阅

  • 🕷 此外还有爬虫专栏:请点击——>Python爬虫基础专栏求订阅

  • 📕 此外还有python基础专栏:请点击——>Python基础学习专栏求订阅

  • 文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏

  • ❤️ 欢迎各位佬关注! ❤️

1、库的介绍

  • PyQt6是一个创建图形用户界面应用程序的工具包,它是Qt6的Python绑定。Qt是一个跨平台的C++图形用户界面应用程序开发框架,广泛用于开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。PyQt6使得Python程序员能够利用Qt的强大功能,轻松创建具有丰富功能和美观界面的应用程序。

PyQt6的主要特点包括:

  • 跨平台:可以在Windows、Linux、macOS等操作系统上运行。
  • 丰富的控件:提供了大量的控件(如按钮、标签、文本框等),方便开发者使用。
  • 强大的布局管理:提供了多种布局管理器,可以方便地对控件进行布局。
  • 事件处理:支持各种事件处理,如鼠标点击、键盘输入等。
  • 丰富的API:提供了大量的API,可以方便地进行各种开发操作。
  • 与Qt6的紧密集成:作为Qt6的Python绑定,PyQt6可以访问Qt6的所有功能。

使用PyQt6开发应用程序的一般步骤:

  • 安装PyQt6:可以通过pip安装PyQt6。
  • 导入必要的模块:从PyQt6.QtWidgets模块中导入应用程序、窗口等类。
  • 创建应用程序和窗口:创建一个QApplication对象和一个窗口对象。
  • 设置窗口:设置窗口的标题、大小等属性。
  • 添加控件:在窗口中添加各种控件,如按钮、文本框等。
  • 设置布局:使用布局管理器对控件进行布局。
  • 显示窗口:调用窗口的show()方法显示窗口。
  • 运行应用程序:调用QApplication对象的exec()方法运行应用程序。

库的安装

pip install PyQt6 -i https://pypi.tuna.tsinghua.edu.cn/simple/

2、设计窗口

调用父类的初始化方法
设置窗口标题
设置窗口的初始大小
# 导入必要的PyQt6模块  
import sys  
from PyQt6.QtGui import QStandardItemModel, QStandardItem  
from PyQt6.QtWidgets import QWidget, QPushButton, QVBoxLayout, QApplication, QHBoxLayout, QListView, QLineEdit  
# 定义一个继承自QWidget的类,用于构建我们的GUI  
class MyWidget(QWidget):  def __init__(self, parent=None):  super(MyWidget, self).__init__(parent)  # 调用父类的初始化方法  self.setWindowTitle("简易PyQt6-GUI界面实现列表的增删查改")  # 设置窗口标题  self.resize(500,350)  # 设置窗口的初始大小  

设计列表视图

初始化一个列表
创建一个4行1列的标准数据模型,用于管理列表视图的数据
遍历数据模型的行数,将self.list中的数据设置为数据模型的项
创建QListView控件,并设置其模型为上面创建的数据模型
# 初始化一个列表,用于存储将要显示在QListView中的数据  
self.list = ['奥运', '巴黎', '夺冠', '奥运健儿']  # 创建一个4行1列的标准数据模型,用于管理列表视图的数据  
self.mode = QStandardItemModel(4, 1)  # 遍历数据模型的行数,将self.list中的数据设置为数据模型的项  
for i in range(self.mode.rowCount()):  item = QStandardItem(self.list[i])  self.mode.setItem(i, 0, item)  # 向数据模型中再插入一行数据  
self.mode.insertRow(4, QStandardItem("大家好")) # 向数据模型中再插入一行数据  
self.mode.insertRow(4, QStandardItem("大家好"))  # 创建QListView控件,并设置其模型为上面创建的数据模型  
self.listView = QListView()  
self.listView.setModel(self.mode)  

设计输入框控件与按钮

文本输入框:QLineEdit()
按钮绑定函数:QPushButton("显示文字", clicked=self.函数名无括号)
# 创建其他控件:一个文本输入框和一个包含三个按钮的水平布局  
self.le = QLineEdit()  # 文本输入框,可能用于输入待添加的项目名称  
self.addPb = QPushButton("增加项", clicked=self.addItem)  # 增加项目的按钮,绑定到addItem方法  
self.delPb = QPushButton("删除项", clicked=self.delItem)  # 删除项目的按钮,绑定到delItem方法  
# 增加一个查
self.searchPb = QPushButton("查询", clicked=self.searchItem)
# 增加一个改
self.changePb = QPushButton("修改", clicked=self.changeItem)
self.sortPb = QPushButton("项目排序", clicked=self.sortItem)  # 排序按钮,绑定到sortItem方法

设计布局

# 创建水平布局,并添加按钮  
hLayout = QHBoxLayout()
hLayout.setContentsMargins(0, 0, 0, 0)
hLayout.addWidget(self.addPb)
hLayout.addWidget(self.delPb)
hLayout.addWidget(self.searchPb)
hLayout.addWidget(self.changePb)
hLayout.addWidget(self.sortPb)# 创建垂直布局,并设置到当前QWidget上  
self.vLayout = QVBoxLayout(self)  
self.vLayout.addWidget(self.listView)  # 添加列表视图  
self.vLayout.addWidget(self.le)  # 添加文本输入框  
self.vLayout.addLayout(hLayout)  # 添加包含按钮的水平布局  

listView的简单样式

self.listView.setStyleSheet("""
QListView {
background-color: #FFE4E1;
color: #333333;
border: 1px solid #BBBBBB;
}
QListView::Item {
padding: 5px;
}
QListView::Item:hover {
background-color: #87CEFA;
color:blue;
}""")

增删查改函数

def addItem(self):num = self.mode.rowCount()s = self.le.text()if s != '':self.mode.appendRow(QStandardItem(s))def delItem(self):# 定位当前index = self.listView.currentIndex()if index.isValid():# 删除当前项self.mode.removeRow(index.row())else:self.messageBox = QMessageBox.information(self, "提示", "请选择要删除的内容")def searchItem(self):s = self.le.text()if s != '':for i in range(self.mode.rowCount()):if s == self.mode.item(i, 0).text():# 定位到 当前self.listView.setCurrentIndex(self.mode.index(i, 0))returnelse:# 弹窗提示self.messageBox = QMessageBox.information(self, "提示", "没有找到")def changeItem(self):s = self.le.text()# 获取当前定位index = self.listView.currentIndex()if s != '':if index.isValid():# 获取当前项item = self.mode.itemFromIndex(index)# 获取当前项的文本text = item.text()item.setText(s)self.messageBox = QMessageBox.information(self, "提示", "修改成功!")else:self.messageBox = QMessageBox.information(self, "提示", "请选择要修改的内容")def sortItem(self):self.mode.sort(0)

完整代码

# -*- coding: UTF-8 -*-
'''
@Project :测试 
@File    :pyqt6_test.py
@IDE     :PyCharm 
@Author  :一晌小贪欢
@Date    :2024/7/29 14:35 
'''import sys
from PyQt6.QtGui import QStandardItemModel, QStandardItem
from PyQt6.QtWidgets import QWidget, QPushButton, QVBoxLayout, QApplication, QHBoxLayout, QListView, QLineEdit, \QMessageBoxclass MyWidget(QWidget):def __init__(self, parent=None):super(MyWidget, self).__init__(parent)self.setWindowTitle("简易PyQt6-GUI界面实现列表的增删查改")self.resize(500, 350)self.list = ['奥运', '巴黎', '夺冠', '奥运健儿']# 创建四行一列标准数据模型self.mode = QStandardItemModel(4, 1)# 将数据中的列表项作为标准数据模型输出for i in range(self.mode.rowCount()):item = QStandardItem(self.list[i])self.mode.setItem(i, 0, item)self.mode.insertRow(4, QStandardItem("大家好"))self.listView = QListView()self.listView.setModel(self.mode)self.le = QLineEdit()self.addPb = QPushButton("增加项", clicked=self.addItem)self.delPb = QPushButton("删除项", clicked=self.delItem)# 增加一个查self.searchPb = QPushButton("查询", clicked=self.searchItem)# 增加一个改self.changePb = QPushButton("修改", clicked=self.changeItem)self.sortPb = QPushButton("项目排序", clicked=self.sortItem)hLayout = QHBoxLayout()hLayout.setContentsMargins(0, 0, 0, 0)hLayout.addWidget(self.addPb)hLayout.addWidget(self.delPb)hLayout.addWidget(self.searchPb)hLayout.addWidget(self.changePb)hLayout.addWidget(self.sortPb)self.vLayout = QVBoxLayout(self)self.vLayout.addWidget(self.listView)self.vLayout.addWidget(self.le)self.vLayout.addLayout(hLayout)# 添加样式self.listView.setStyleSheet("""QListView {background-color: #FFE4E1;color: #333333;border: 1px solid #BBBBBB;}QListView::Item {padding: 5px;}QListView::Item:hover {background-color: #87CEFA;color:blue;}""")def addItem(self):num = self.mode.rowCount()s = self.le.text()if s != '':self.mode.appendRow(QStandardItem(s))def delItem(self):# 定位当前index = self.listView.currentIndex()if index.isValid():# 删除当前项self.mode.removeRow(index.row())else:self.messageBox = QMessageBox.information(self, "提示", "请选择要删除的内容")def searchItem(self):s = self.le.text()if s != '':for i in range(self.mode.rowCount()):if s == self.mode.item(i, 0).text():# 定位到 当前self.listView.setCurrentIndex(self.mode.index(i, 0))returnelse:# 弹窗提示self.messageBox = QMessageBox.information(self, "提示", "没有找到")def changeItem(self):s = self.le.text()# 获取当前定位index = self.listView.currentIndex()if s != '':if index.isValid():# 获取当前项item = self.mode.itemFromIndex(index)# 获取当前项的文本text = item.text()item.setText(s)self.messageBox = QMessageBox.information(self, "提示", "修改成功!")else:self.messageBox = QMessageBox.information(self, "提示", "请选择要修改的内容")def sortItem(self):self.mode.sort(0)if __name__ == '__main__':app = QApplication(sys.argv)w = MyWidget()w.show()sys.exit(app.exec())

总结

  • 希望对初学者有帮助

  • 致力于办公自动化的小小程序员一枚

  • 希望能得到大家的【一个免费关注】!感谢

  • 求个 🤞 关注 🤞

  • 此外还有办公自动化专栏,欢迎大家订阅:Python办公自动化专栏

  • 求个 ❤️ 喜欢 ❤️

  • 此外还有爬虫专栏,欢迎大家订阅:Python爬虫基础专栏

  • 求个 👍 收藏 👍

  • 此外还有Python基础专栏,欢迎大家订阅:Python基础学习专栏

http://www.dt0577.cn/news/4658.html

相关文章:

  • 济南市住建厅官方网站国外免费建站网站搭建
  • 怎么看一个网站有没有做百度推广怎么推广游戏叫别人玩
  • 怎么用PHP做网站留言板宁波百度快照优化排名
  • 都是做面食网站广告行业怎么找客户
  • 沈阳快速建站公司有哪些百度地图人工客服电话
  • jquery 类似wordpress重庆网站seo诊断
  • 北京市建设工程造价管理协会网站东莞百度搜索优化
  • 西安市网站制作公司营销推广活动策划书模板
  • 仙居做网站在哪里做seo的基本工作内容
  • 北京网站备案拍照的地点宁波seo网站排名优化公司
  • 专门做win7系统的网站百度客服中心电话
  • 沈阳网站建设索王道下拉seo站长工具平台
  • 网站开发有多少种推广公司经营范围
  • wordpress更改了域名 图片不显示陕西seo主管
  • 鸡泽信息网seo如何优化排名
  • 做网站宝鸡蓝牙耳机网络营销推广方案
  • 阿里云自己做网站企业网站建设方案书
  • 沙井做网站的公司外包公司值得去吗
  • 专注与开发网站的北京网络公司优秀的营销案例
  • 景德镇陶瓷学院校友做网站的seo是什么意思 职业
  • 企业建站业务还能做吗推广赚钱的微信小程序
  • dedecms怎么做网站怎么创建域名
  • 文本编辑器 网站深圳市网络品牌推广
  • 沈阳出名网站信息流优化师招聘
  • 湛江外包做网站二级域名查询网站
  • 企业网站分析案例广东广州疫情最新情况
  • 做网站开发需要学什么抖音账号权重查询入口
  • 做网站做得好的公司优化营商环境心得体会个人
  • 太原做网站公司短视频营销推广方式
  • 泰安网签房查询百度推广优化是什么意思