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

Python基于PyQt6制作GUI界面——按钮

        示例对应的制作的 ui文件 界面如下所示。

<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0"><class>Form</class><widget class="QWidget" name="Form"><property name="geometry"><rect><x>0</x><y>0</y><width>400</width><height>300</height></rect></property><property name="windowTitle"><string>Form</string></property><widget class="QWidget" name="verticalLayoutWidget"><property name="geometry"><rect><x>40</x><y>20</y><width>77</width><height>141</height></rect></property><layout class="QGridLayout"><item row="0" column="0"><widget class="QPushButton" name="pushButton_1"><property name="sizePolicy"><sizepolicy hsizetype="Fixed" vsizetype="Fixed"><horstretch>0</horstretch><verstretch>0</verstretch></sizepolicy></property><property name="text"><string>按钮1</string></property></widget></item><item row="1" column="0"><widget class="QPushButton" name="pushButton_2"><property name="sizePolicy"><sizepolicy hsizetype="Fixed" vsizetype="Fixed"><horstretch>0</horstretch><verstretch>0</verstretch></sizepolicy></property><property name="text"><string>按钮2</string></property></widget></item><item row="2" column="0"><widget class="QPushButton" name="pushButton_3"><property name="sizePolicy"><sizepolicy hsizetype="Fixed" vsizetype="Fixed"><horstretch>0</horstretch><verstretch>0</verstretch></sizepolicy></property><property name="text"><string>按钮3</string></property></widget></item><item row="3" column="0"><widget class="QPushButton" name="pushButton_4"><property name="sizePolicy"><sizepolicy hsizetype="Fixed" vsizetype="Fixed"><horstretch>0</horstretch><verstretch>0</verstretch></sizepolicy></property><property name="text"><string>按钮4</string></property></widget></item><item row="4" column="0"><widget class="QPushButton" name="pushButton_5"><property name="sizePolicy"><sizepolicy hsizetype="Fixed" vsizetype="Fixed"><horstretch>0</horstretch><verstretch>0</verstretch></sizepolicy></property><property name="text"><string>按钮5</string></property></widget></item></layout></widget></widget><resources/><connections/>
</ui>

from PyQt6.QtWidgets import QApplication, QMainWindow  
from PyQt6.uic import loadUi  class MyWindow(QMainWindow):  def handleButtonClick_1(self, text):  print("1")def handleButtonClick_2(self, text):  print("2")def handleButtonClick_3(self, text):  print("3")def handleButtonClick_4(self, text):  print("4")def handleButtonClick_5(self, text):  print("5")def __init__(self, ui_file):    super().__init__()    # 使用 loadUi 加载 .ui 文件    loadUi(ui_file, self)    # 初始化窗口设置(如果需要)    self.setWindowTitle('My Window')# 确保对象名称与 .ui 文件中定义的名称完全匹配  self.pushButton_1.clicked.connect(self.handleButtonClick_1)self.pushButton_2.clicked.connect(self.handleButtonClick_2)self.pushButton_3.clicked.connect(self.handleButtonClick_3)self.pushButton_4.clicked.connect(self.handleButtonClick_4)self.pushButton_5.clicked.connect(self.handleButtonClick_5)if __name__ == '__main__':    import sys    app = QApplication(sys.argv)    # 假设 untitled.ui 是你的 UI 文件,并且文件在同一目录    window = MyWindow('untitled.ui')    window.show()    sys.exit(app.exec())

相关文章:

  • MongoDB CRUD操作:内嵌文档查询
  • 前端基础入门三大核心之HTML篇 —— SVG的viewBox、width和height:绘制矢量图的魔法比例尺【含代码示例】
  • 【C++】STL快速入门基础
  • 基于Docker部署GitLab环境搭建
  • 使用JSON_EXTRACT匹配某个json类型字段中的某个具体字段
  • Java集合框架详解:深入探讨Java中的集合框架
  • 【栈】Leetcode 71. 简化路径【中等】
  • 美团Java社招面试题真题,最新面试题
  • Srping 历史
  • ROS学习笔记(16):夹缝循迹
  • 类 和 对象(二)
  • 分享10个国内可以使用的GPT中文网站
  • 工业4.0 企业级云MES全套源码,支持app、小程序、H5、台后管理端
  • 四川汇聚荣科技有限公司好不好?
  • Day6 LeedCode: 242.有效的字母异位词 349. 两个数组的交集 202. 快乐数 1. 两数之和
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • CentOS从零开始部署Nodejs项目
  • create-react-app做的留言板
  • Electron入门介绍
  • HTML-表单
  • learning koa2.x
  • PAT A1092
  • Rancher如何对接Ceph-RBD块存储
  • Spark学习笔记之相关记录
  • ViewService——一种保证客户端与服务端同步的方法
  • web标准化(下)
  • 解析带emoji和链接的聊天系统消息
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • 找一份好的前端工作,起点很重要
  • 1.Ext JS 建立web开发工程
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • Spring Batch JSON 支持
  • ​软考-高级-信息系统项目管理师教程 第四版【第14章-项目沟通管理-思维导图】​
  • ​软考-高级-信息系统项目管理师教程 第四版【第19章-配置与变更管理-思维导图】​
  • # 20155222 2016-2017-2 《Java程序设计》第5周学习总结
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • #pragma multi_compile #pragma shader_feature
  • #QT 笔记一
  • #基础#使用Jupyter进行Notebook的转换 .ipynb文件导出为.md文件
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • $forceUpdate()函数
  • (4) PIVOT 和 UPIVOT 的使用
  • (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
  • (k8s)Kubernetes本地存储接入
  • (仿QQ聊天消息列表加载)wp7 listbox 列表项逐一加载的一种实现方式,以及加入渐显动画...
  • (附源码)springboot家庭装修管理系统 毕业设计 613205
  • (算法)大数的进制转换
  • (已解决)vue+element-ui实现个人中心,仿照原神
  • (转)四层和七层负载均衡的区别
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .Family_物联网
  • .net core 调用c dll_用C++生成一个简单的DLL文件VS2008
  • .NET Framework杂记
  • .net php 通信,flash与asp/php/asp.net通信的方法