Modify the style to show a scroll bar for combo boxes

This commit is contained in:
Veronica Berglyd Olsen
2025-06-19 19:29:14 +02:00
parent 110d8b8e59
commit dbf0b5d3f7
5 changed files with 21 additions and 7 deletions
+8 -1
View File
@@ -117,12 +117,19 @@ class NTreeView(QTreeView):
class NComboBox(QComboBox):
def __init__(self, parent: QWidget | None = None) -> None:
def __init__(self, parent: QWidget | None = None, maxItems: int = 15) -> None:
super().__init__(parent=parent)
self.setFocusPolicy(Qt.FocusPolicy.StrongFocus)
self.setMaxVisibleItems(maxItems)
# The style sheet disables Fusion style pop-up mode on some platforms
# and allows for scrolling of long lists of items
self.setStyleSheet("QComboBox {combobox-popup: 0;}")
return
def wheelEvent(self, event: QWheelEvent) -> None:
"""Only capture the mouse wheel if the widget has focus."""
if self.hasFocus():
super().wheelEvent(event)
else: