📜  PyQt5 - 计算 ComboBox 中的项目数

📅  最后修改于: 2022-05-13 01:55:42.748000             🧑  作者: Mango

PyQt5 - 计算 ComboBox 中的项目数

在本文中,我们将了解如何找到组合框中的项目总数。我们知道我们可以在组合框中添加项目,通过addItem方法添加单个项目和addItems方法添加多个项目。为了获得组合框中所有项目的计数,我们将使用count方法。

实施步骤:

1.创建一个组合框
2. 将项目添加到组合框
3.创建按钮
4. 为按钮添加动作
5.创建标签以显示计数
5. 在动作内部,借助 count 方法对组合框的项目进行计数,并将其存储在变量中
6. 借助 setText 方法在标签中显示计数变量

下面是实现——

# importing libraries
from PyQt5.QtWidgets import * 
from PyQt5 import QtCore, QtGui
from PyQt5.QtGui import * 
from PyQt5.QtCore import * 
import sys
  
  
class Window(QMainWindow):
  
    def __init__(self):
        super().__init__()
  
        # setting title
        self.setWindowTitle("Python ")
  
        # setting geometry
        self.setGeometry(100, 100, 600, 400)
  
        # calling method
        self.UiComponents()
  
        # showing all the widgets
        self.show()
  
    # method for widgets
    def UiComponents(self):
  
        # creating a combo box widget
        self.combo_box = QComboBox(self)
  
        # setting geometry of combo box
        self.combo_box.setGeometry(200, 150, 120, 30)
  
        # geek list
        geek_list = ["Geek", "Geeky Geek", "Legend Geek", "Ultra Legend Geek"]
  
        # adding list of items to combo box
        self.combo_box.addItems(geek_list)
  
        # creating push button to clear the list
        button = QPushButton("Find Count ", self)
  
        print(self.combo_box.count())
  
        # adding action to button
        button.pressed.connect(self.find_count)
  
        # creating label to show count
        self.label = QLabel(self)
  
        # setting geometry of the label
        self.label.setGeometry(200, 200, 200, 30)
  
    def find_count(self):
  
        # finding the number of items in cmbo box
        count = self.combo_box.count()
  
        # showing count on the screen though label
        self.label.setText("Total number of  items : " + str(count))
  
# create pyqt5 app
App = QApplication(sys.argv)
  
# create the instance of our Window
window = Window()
  
# start the app
sys.exit(App.exec())

输出 :