请问python的pyqt5中combox控件下拉菜单怎么自动读取sqlite数据库中的数据并显示呢?

请问combox控件的下拉选项怎么自动同步sqlite数据库中的数据呢?数据库里面有个表,表内只有一列数据,我想在点击combox控件的下拉选项后自动在下拉菜单里面显示数据库中的内容。
哪位给指导一下,这种应该怎么操作呢?

你首先获取数据库表的列数据嘛,for循环来创建 Item 项目

self.comboBox_process_interval = QtWidgets.QComboBox(self.tab_Train)
self.comboBox_process_interval.setObjectName("comboBox_process_interval")
self.comboBox_process_interval.addItem("")
self.comboBox_process_interval.addItem("")
self.comboBox_process_interval.addItem("")
self.comboBox_process_interval.addItem("")
self.comboBox_process_interval.addItem("")
self.comboBox_process_interval.addItem("")

创建后再进行设置值,或者你已知长度的话,addItem() 的时候,就可以顺便创建了

self.comboBox_process_interval.setItemText(0, _translate("MainWindow_ML_Tool", "10"))
self.comboBox_process_interval.setItemText(1, _translate("MainWindow_ML_Tool", "50"))
self.comboBox_process_interval.setItemText(2, _translate("MainWindow_ML_Tool", "100"))
self.comboBox_process_interval.setItemText(3, _translate("MainWindow_ML_Tool", "200"))
self.comboBox_process_interval.setItemText(4, _translate("MainWindow_ML_Tool", "500"))
self.comboBox_process_interval.setItemText(5, _translate("MainWindow_ML_Tool", "1000"))

直接上代码,望采纳


#!/usr/bin/python3
# -*- coding: UTF-8 -*-

from PyQt5.QtWidgets import QApplication, QMainWindow,QComboBox
import sys
import sqlite3

if __name__ == '__main__':
    app = QApplication(sys.argv)
    MainWindow = QMainWindow()
    
    #准备一些数据,:memory:改为你自己的数据库
    db = sqlite3.connect(':memory:')
    cursor = db.cursor()
    #临时创建表
    create_sql = 'create table combobox_item(item_name char(20))'
    cursor.execute(create_sql)
    #临时插入数据
    insert_sql = 'insert into combobox_item(item_name) values(:1)'
    cursor.executemany(insert_sql,[['1'],['x'],['23'],['44'],['y'],['zz']])
    db.commit()
    #获取数据
    select_sql = 'select item_name from combobox_item'
    cursor.execute(select_sql)
    
    items = []
    datas = cursor.fetchall()
    for data in datas:
        items.append(data[0])
    
    cb = QComboBox(MainWindow)
    cb.addItems(items)

    MainWindow.show()
    sys.exit(app.exec_())