Sto lavorando a un'applicazione in PyQt che accetta un dizionario di oggetti e consente di tracciare le variabili in streaming da un robot in tempo reale. Una delle cose su cui sto lavorando per abilitare questo è un menu a discesa. Sfortunatamente, abbiamo un paio di centinaia di variabili, quindi il mio PyQt Combobox si apre dalla parte superiore dello schermo verso il basso con gli oggetti quando si fa clic. Mi piacerebbe limitare il numero di elementi visualizzati alla volta a 20, con la possibilità di scorrere per vedere il resto. Ho provato a utilizzare il metodo documentato setMaxVisibleItems, ma non ha alcun effetto sul menu a discesa. Qualche consiglio?PyQt QComboBox numero di impostazione di elementi visibili nel menu a discesa
Codice qui:
#!/usr/bin/env python
from PyQt4.QtCore import Qt
from PyQt4.QtGui import QComboBox, QApplication
from cli.parc2_od import cli_od
import sys
app = QApplication(sys.argv)
items = cli_od.OD.keys() #Items to populate dropdown.
combo = QComboBox()
#The solution:
combo.setStyleSheet("QComboBox { combobox-popup: 0; }")
combo.setMaxVisibleItems(10)
combo.addItems(items)
combo.resize(300, 30)
combo.show()
sys.exit(app.exec_())