Estoy trabajando en una aplicación en PyQt que toma un diccionario de objetos y le permite trazar las variables de transmisión desde un robot en tiempo real. Una de las cosas en las que estoy trabajando para habilitar esto es un menú desplegable. Desafortunadamente, tenemos un par de cientos de variables, por lo que mi PyQt Combobox aparece desde la parte superior de la pantalla hasta la parte inferior con elementos cuando se hace clic. Me gustaría limitar la cantidad de elementos mostrados a la vez a 20, con la capacidad de desplazarme para ver el resto. Intenté usar el método documentMaxVisibleItems documentado, pero no afecta el menú desplegable. ¿Alguna recomendación?PyQt QComboBox establecer el número de elementos visibles en el menú desplegable
Código aquí:
#!/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_())