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

网站建设预算模板苏州专业做网站

网站建设预算模板,苏州专业做网站,曲阳住房和城乡建设局网站,网站设计哪家公司好目录 专栏导读1、库的介绍PyQt6的主要特点包括#xff1a;使用PyQt6开发应用程序的一般步骤#xff1a;库的安装 2、设计窗口设计列表视图设计输入框控件与按钮设计布局listView的简单样式增删查改函数 完整代码总结 专栏导读 #x1f338; 欢迎来到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, parentNone): 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(显示文字, clickedself.函数名无括号) # 创建其他控件一个文本输入框和一个包含三个按钮的水平布局 self.le QLineEdit() # 文本输入框可能用于输入待添加的项目名称 self.addPb QPushButton(增加项, clickedself.addItem) # 增加项目的按钮绑定到addItem方法 self.delPb QPushButton(删除项, clickedself.delItem) # 删除项目的按钮绑定到delItem方法 # 增加一个查 self.searchPb QPushButton(查询, clickedself.searchItem) # 增加一个改 self.changePb QPushButton(修改, clickedself.changeItem) self.sortPb QPushButton(项目排序, clickedself.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, parentNone):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(增加项, clickedself.addItem)self.delPb QPushButton(删除项, clickedself.delItem)# 增加一个查self.searchPb QPushButton(查询, clickedself.searchItem)# 增加一个改self.changePb QPushButton(修改, clickedself.changeItem)self.sortPb QPushButton(项目排序, clickedself.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.w-s-a.com/news/850730/

相关文章:

  • 爱网站无法登录怎么回事手表网
  • 网站建设公司现在还挣钱吗山西手动网站建设推荐平台
  • 重庆建设工程交易信息网站网站制作公司起名
  • 东莞寮步做网站的有吗企业宣传册制作
  • 做网站的软件是哪个上蔡做网站
  • 前后端分离实现网站开发紧急通知网页升级
  • 河北专业网站建设公司推荐佛山小程序开发平台
  • 网站开发强制开启浏览器极速模式建设网站有什么风险
  • 360全景网站建设常州专业网站建设公司咨询
  • 重庆大渡口网站建设网站增加一体化建设功能的好处
  • 网站开发完整视频网站上传 404
  • 自适应网站做推广北京建设工程招标网
  • 外贸网站设计注意事项网上商城官网入口
  • 正规的营销型网站建设公司微官网是网站吗
  • 南京行业门户网站无锡阿里巴巴做网站
  • 河北省和城乡住房建设厅网站wamp wordpress打不开
  • 在哪个平台做网站比较好自动app优化
  • 有没有能帮人快速网站备案的机构个人学做网站
  • 凌云县 城市建设 网站西安市建网站
  • 织梦xml网站地图公众号公众平台
  • 长春省妇幼网站做四维学校网站系统破解版
  • 安阳免费搭建自己的网站个人网站做商城会怎样
  • 网站建设专家公司排行网站举报有奖平台
  • 程序员不是做网站的公司装修效果全景图
  • 桥东区住房和建设局网站怎么做网上问卷
  • 做期货要看哪些网站伪装的福祉 wordpress
  • 做网站需要多少费用网站建设需要懂什么语言
  • 网站手机端做app开发商城设计方案
  • 在建设厅网站上查询注销建造师查域名是否注册
  • 企业网站推广方案策划公司网站在国外打开很慢使用cdn好还是国外租用服务器好