Pysied6 ComboBox

news2024/11/20 1:29:39

Pysied6 ComboBox

  • Pysied6 ComboBox
    • ComboBox常用函数
    • ComboBox常用信号
    • 例程
      • ComboBox添加选项
        • 程序设置
        • 界面设置
      • 返回选项信息
      • 添加删除选项
      • 完整程序
        • 界面程序
        • 主程序

Pyside6的ComboBox下拉列表框,可以给用户提供一系列的选项,下面就来简单了解一下Pysied6 ComboBox的使用。更多关于ComboBox的使用可以参考下面的文档。

https://doc.qt.io/qtforpython-6/PySide6/QtWidgets/QComboBox.html

Pysied6 ComboBox

ComboBox常用函数

函数作用
addItem添加一个下拉选项
addItems添加多个下拉选项
currentIndex返回当前的下拉选项索引
currentText返回当前下拉选项文本
count返回下拉列表框中全部选项的个数
removeItem删除选项
clear清空所有选项
insertItem将选项添加到指定的index位置
setCurrentIndex显示指定index位置的选项

ComboBox常用信号

信号作用
currentIndexChanged当下拉列表选项改变的时候触发

例程

ComboBox添加选项

ComboBox添加选项有两种方式,分别是程序设置和界面设置

程序设置
  self.ui.comboBox.addItem("苹果") # 添加单个选项
  self.ui.comboBox.addItems(["葡萄","香蕉","西瓜"]) # 添加多个选项
界面设置

打开designer软件,双击ComboBox控件,通过"+ -"符号添加和删除选项。
在这里插入图片描述

返回选项信息

print(self.ui.comboBox.currentIndex()) # 打印出当前的选项
print(self.ui.comboBox.currentText())  # 打印出当前选项的文本
print(self.ui.comboBox.count())        # 打印出下拉列表框的选项个数

添加删除选项

def additem_func(self):
        self.ui.comboBox.insertItem(0,str(datetime.now())) # 添加单个选项,并设置在index为0的位置
        self.ui.comboBox.setCurrentIndex(0)                # 显示index为0的选项
def deleteitem_func(self):
        self.ui.comboBox.removeItem(self.ui.comboBox.currentIndex()) # 移除选项
def combobox_index_change_func(self,index):
        print(self.ui.comboBox.currentText(),index) # 打印出选中的选项文本

完整程序

界面程序
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <class>MainWindow</class>
 <widget class="QMainWindow" name="MainWindow">
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>386</width>
    <height>283</height>
   </rect>
  </property>
  <property name="windowTitle">
   <string>MainWindow</string>
  </property>
  <widget class="QWidget" name="centralwidget">
   <layout class="QVBoxLayout" name="verticalLayout_2">
    <item>
     <layout class="QVBoxLayout" name="verticalLayout">
      <property name="leftMargin">
       <number>50</number>
      </property>
      <item>
       <widget class="QComboBox" name="comboBox">
        <property name="sizePolicy">
         <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
          <horstretch>98</horstretch>
          <verstretch>0</verstretch>
         </sizepolicy>
        </property>
        <property name="maximumSize">
         <size>
          <width>250</width>
          <height>20</height>
         </size>
        </property>
        <property name="sizeIncrement">
         <size>
          <width>98</width>
          <height>100</height>
         </size>
        </property>
        <property name="baseSize">
         <size>
          <width>100</width>
          <height>0</height>
         </size>
        </property>
       </widget>
      </item>
     </layout>
    </item>
    <item>
     <layout class="QHBoxLayout" name="horizontalLayout">
      <item>
       <widget class="QPushButton" name="deleteitem_btn">
        <property name="maximumSize">
         <size>
          <width>100</width>
          <height>16777215</height>
         </size>
        </property>
        <property name="text">
         <string>删除选项</string>
        </property>
       </widget>
      </item>
      <item>
       <widget class="QPushButton" name="additem_btn">
        <property name="maximumSize">
         <size>
          <width>100</width>
          <height>16777215</height>
         </size>
        </property>
        <property name="text">
         <string>增加选项</string>
        </property>
       </widget>
      </item>
     </layout>
    </item>
   </layout>
  </widget>
  <widget class="QMenuBar" name="menubar">
   <property name="geometry">
    <rect>
     <x>0</x>
     <y>0</y>
     <width>386</width>
     <height>22</height>
    </rect>
   </property>
  </widget>
  <widget class="QStatusBar" name="statusbar"/>
 </widget>
 <resources/>
 <connections/>
</ui>

主程序
# Import Qt libraries
from PySide6.QtWidgets import *
from PySide6.QtCore import QFile
# Import UI developed in Qt Creator
from combobox_ui import Ui_MainWindow  # 导入界面
# Import PseudoSensor
# Import system tools and datetime
import sys
import statistics
import time
from datetime import datetime

# Create and start the Qt application
class MainWindow(QMainWindow):
    def __init__(self):
        super(MainWindow, self).__init__()
        
        # 设置界面为用户设计的界面
        self.ui = Ui_MainWindow() 
        self.ui.setupUi(self) 

        self.ui.comboBox.addItem("苹果") # 添加单个选项
        self.ui.comboBox.addItems(["葡萄","香蕉","西瓜"]) # 添加多个选项



        print(self.ui.comboBox.currentIndex()) # 打印出当前的选项
        print(self.ui.comboBox.currentText())  # 打印出当前选项的文本
        print(self.ui.comboBox.count())        # 打印出下拉列表框的选项个数
      

        self.ui.comboBox.currentIndexChanged.connect(self.combobox_index_change_func)

        self.ui.additem_btn.clicked.connect(self.additem_func)
        self.ui.deleteitem_btn.clicked.connect(self.deleteitem_func)

    def additem_func(self):
        self.ui.comboBox.insertItem(0,str(datetime.now())) # 添加单个选项,并设置在index为0的位置
        self.ui.comboBox.setCurrentIndex(0)                # 显示index为0的选项

    def deleteitem_func(self):
        self.ui.comboBox.removeItem(self.ui.comboBox.currentIndex()) # 移除选项

    def combobox_index_change_func(self,index):
        print(self.ui.comboBox.currentText(),index) # 打印出选中的选项文本

       
    def closeAndExit(self):
        sys.exit()

if __name__ == "__main__":
    app = QApplication(sys.argv) # 初始化QApplication

    # 初始化界面并显示界面
    window = MainWindow() 
    window.show() 
    window.setFixedSize(window.width(), window.height())
    sys.exit(app.exec())

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1109370.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringCloud-Sentinel

一、介绍 &#xff08;1&#xff09;提供界面配置配置服务限流、服务降级、服务熔断 &#xff08;2&#xff09;SentinelResource的blockHandler只处理后台配置的异常&#xff0c;运行时异常fallBack处理&#xff0c;且资源名为value时才生效&#xff0c;走兜底方法 二、安装…

数据分析:密度图

目前拥有的数据如图&#xff0c;三列分别对应瑕疵种类&#xff0c;对应的置信 度&#xff0c;x方向坐标。 现在想要做的事是观看瑕疵种类和置信度之间的关系。 要显示数据分布的集中程度&#xff0c;可以使用以下几种常见的图形来观察&#xff1a; 1、箱线图&#xff08;Box P…

【工具】电脑网络连接正常,但是有些页面无法登录,如何解决?

目录 0.环境 1.背景 2.具体操作 0.环境 windows 11 64位 1.背景 我们公司的大楼无法进移动联通这种网络的线&#xff0c;所以网络用的是小厂的&#xff0c;有些小厂为了提高网络速度&#xff0c;会屏蔽一些网站&#xff0c;这就导致在工作中有些网站直接通过WIFI连接是无法访…

头歌平台——基于结构体的学生信息管理系统

第1关&#xff1a;学生信息管理系统 任务描述 本关任务&#xff1a;编写一个基于结构体得学生成绩信息管理系统。主要功能如下&#xff1a; 1. 用结构体存放所有数据。 2. 每个功能都用函数实现。 3. 输入10个学生的学号和三门课程的成绩。 4. 计算每个学生的总分。 5. 按总分…

头歌平台——C语言之数学运算强化练习题

第1关&#xff1a;逐一挑出来 任务描述 本关需要完成一个输出某个三位数各个位上的数字的小程序。 相关知识 算数运算符 %是取模运算符&#xff0c;获得整除后的余数。 /是通过分子除以分母&#xff0c;获得整除后的整数部分。 floor floor()是返回一个浮点型的整数部分…

腾讯云服务器带宽下载速度表(附上行带宽计算方法)

腾讯云服务器公网带宽下载速度计算&#xff0c;1M公网带宽下载速度是128KB/秒&#xff0c;5M带宽下载速度是512KB/s&#xff0c;腾讯云10M带宽下载速度是1.25M/秒&#xff0c;腾讯云百科txybk.com来详细说下腾讯云服务器不同公网带宽实际下载速度以及对应的上传速度对照表&…

MySQL官方文档如何查看,MySQL中文文档

这里写自定义目录标题 MySQL官方文档如何查看MySQL中文文档 MySQL官方文档如何查看 MySQL官网地址&#xff1a;https://dev.mysql.com/doc/ 比如这里我要找InnoDB架构 MySQL中文文档 MySQL 5.1中文文档地址&#xff1a;https://www.mysqlzh.com/

头歌平台——C语言之链表练习题

第1关&#xff1a;建单向链表 任务描述 本关需要你建立一个带头结点的单向链表。 相关知识 什么是链表&#xff1f;链表和二叉树是C语言数据结构的基础和核心。 链表有多种形式&#xff0c;它可以是单链接的或者双链接的&#xff0c;可以是已排序的或未排序的&#xff0c;…

C# CodeFormer 图像(人脸面部)修复

效果 项目 代码 using Microsoft.ML.OnnxRuntime; using Microsoft.ML.OnnxRuntime.Tensors; using OpenCvSharp; using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; using System.Windows.Forms;namespace 图像修复 {p…

AArch64 TrustZone

概述 本文我们介绍了 TrustZone 技术。通过CPU内置的硬件强制隔离&#xff0c;TrustZone 提供了一种高效的全系统安全设计。 我们介绍了如下功能&#xff1a;将 TrustZone 技术添加到处理器架构中&#xff0c;内存系统对于 TrustZone 的支持以及典型的软件架构。我们还介绍了…

京东API接口助力京东ToB和ToC全面发展

目前京东企业业务已建成7大智能化采购平台&#xff0c;3大场景化产品&#xff0c;4条企业专属供应链体系&#xff0c;发布API接口200余个&#xff0c;在ToB场景的应用能力方面&#xff0c;京东企业业务在2019年还推出三款重量级的技术产品——采购ERP、神算子数据平台和采购大脑…

插入排序 算法

从第二个开始&#xff0c;从后面往前找&#xff0c;如果比其小&#xff0c;就交换&#xff0c;else 就终止 for i 1 i <n i for j i j > 0 (到第二个) j-- if < swap 下面给出源码 //对插入排序来说&#xff0c;直接从第二个元素开始template<ty…

2024北京智能科技展(世亚智博会)推动我国智能科技产业快速发展

2024北京国际智能科技展览会&#xff08;世亚智博会&#xff09; 2024 Shanghai Smart Product Expo 时间:2024年6月28-30日 地点:北京亦创国际会展中心 主题展:北京人工智能展览会|北京软件博览会 随着科技的飞速发展&#xff0c;中国正逐渐成为全球科技领域的一面旗帜。在…

官宣!软考机考模拟练习平台于10月16日至11月3日开放

软考机考模拟练习平台已经在官网公布了&#xff0c;已经报名的考生可以按照以下操作指南开始练习&#xff1a; 1、登陆网上报名平台地址&#xff0c;点击【模拟练习平台】 全国计算机技术与软件专业技术资格(水平)考试网上报名平台 2、登录 温馨提示&#xff1a;实名认证通过…

嵌入式学习笔记(59)内存管理之结构体

数据结构&#xff1a;是一门研究数据在内存中如何分布的学问。 1.5.1.最简单的数据结构&#xff1a;数组 数组的特点&#xff1a;类型相同、意义相关 数组的优势&#xff1a;数组比较简单&#xff0c;访问使用下标&#xff0c;可以随机访问&#xff08;就是可以通过下标随机…

使用crul库和R语言的下载器程序

以下是一个使用crul库和R语言的下载器程序&#xff0c;用于从下载音频。此程序使用了jshk.com.cn/get_proxy的代码。 // 导入必要的库 import ("fmt""github.com/cjlapa/crul""io""net/http""net/url""os" )// 主…

视频文件打不开?盘点4个有效方法!

“好奇怪呀&#xff0c;我将相机里的部分视频导入电脑了&#xff0c;但是这些视频都无法打开。视频文件打不开是为什么呢&#xff1f;应该怎么做才能正常播放视频呀&#xff1f;” 随着数字化媒体的普及&#xff0c;视频文件在我们的生活中扮演着越来越重要的角色。然而&#x…

一文搞定专属码的设计与开发

作者 | 木白 导读 本文将为您介绍百度码的译码技术&#xff0c;包括关键的译码流程和关键的优化手段。百度码目前已经在高考等活动中进行应用&#xff0c;在未来的发展中&#xff0c;百度码的译码技术将继续升级和完善&#xff0c;以满足更多场景的需求。百度码的译码技术将在现…

【C++】C++智能指针

​ ​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;C学习 &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 上一篇博客&#xff1a;【C】C异…

IDEA设置标签多行展示

一、打开IDEA工具 二、IDEA页面左上角File里边settings设置 三、找到Editor --》 General --》 Editor tabs 四、取消单行展示选项 五、设置最多页签个数 参考&#xff1a;IDEA设置标签多行展示-腾讯云开发者社区-腾讯云