Как убрать белый фон (сверху и снизу) из всплывающего окна QComboBox? - PullRequest
0 голосов
/ 22 января 2019

Я создаю приложение с графическим интерфейсом с qt5 и pyqt5. Я пытаюсь создать темную тему, но у меня проблема с QComboBox. Когда я пытался создать темный фон в QListView, я получаю белую рамку или любое другое имя вверху и внизу списка.

Я пробовал много способов, таких как заполнение или изменение значений полей, но ничего не помогло Я попробовал кое-что упомянутое уже здесь Удалить фон QListView Но всегда одно и то же.

QComboBox {
    font: 12pt Fira Sans Condensed;
    background-color: #2e2e2e;
    border-top: 0px solid #3e3e3e;
    border-left: 0px solid #3e3e3e;
    border-right: 0px solid #3e3e3e;
    border-bottom: 2px solid #3e3e3e;
    padding: 5%;
    max-height: 30px;
    min-width: 140px;
    color: white;
    selection-background-color: #5e5e5e;
}

QComboBox::drop-down {
    border: none;
}

QComboBox::down-arrow {
    image: url(icons/QComboBox/down-arrow.png);
    width: 25px;
    height: 25px;
    border-width: 0px;
    padding-right: 10px;
}

QComboBox::down-arrow:pressed {
    position: relative;
    top: 1px; left: 1px;
}

QListView {
    font: 12pt Fira Sans Condensed;
    background-color: #2e2e2e;
    outline: 0;
    color: white;
    selection-background-color: #5e5e5e;
}

QListView::item {
    min-height: 20px;
    padding: 5%;
}
self.list = QtWidgets.QListView(self.window.comboBox)
self.window.comboBox.addItem("test1")
self.window.comboBox.addItem("test2")
self.window.comboBox.setView(self.list)

Вот что я получаю

Screenshot-2019-01-22-20-19-41.png

Screenshot-2019-01-22-20-20-08.png

Добавить Ожидаю что-то без белого цвета вверху и внизу списка

1 Ответ

0 голосов
/ 22 января 2019

Вы должны установить цвет в QFrame, который является родителем view() напрямую:

self.window.comboBox.view().parentWidget().setStyleSheet('background-color: #2e2e2e;')
...