내가 선택한 배경색을 가진 QListWidget에 사용자 정의 된 항목을 추가하고 아래 그림의이 초안 예와 같이 각 항목에 아래쪽 테두리를 추가하는 방법은 무엇입니까?QListWidget에 사용자 정의 항목 추가
from PyQt5 import QtWidgets, QtGui
import sys
class CustomListHead(QtWidgets.QWidget):
def __init__(self):
super(CustomListHead, self).__init__()
self.project_title = QtWidgets.QLabel("Today")
self.set_ui()
def set_ui(self):
grid_box = QtWidgets.QGridLayout()
grid_box.addWidget(self.project_title, 0, 0)
self.setLayout(grid_box)
self.show()
class CustomListItem(QtWidgets.QWidget):
def __init__(self):
super(CustomListItem, self).__init__()
self.project_title = QtWidgets.QLabel("Learn Python")
self.task_title = QtWidgets.QLabel("Learn more about forms, models and include")
self.set_ui()
def set_ui(self):
grid_box = QtWidgets.QGridLayout()
grid_box.addWidget(self.project_title, 0, 0)
grid_box.addWidget(self.task_title, 1, 0)
self.setLayout(grid_box)
self.show()
class MainWindowUI(QtWidgets.QMainWindow):
def __init__(self):
super(MainWindowUI, self).__init__()
self.list_widget = QtWidgets.QListWidget()
self.set_ui()
def set_ui(self):
custom_head_item = CustomListHead()
item = QtWidgets.QListWidgetItem(self.list_widget)
item.setSizeHint(custom_head_item.sizeHint())
self.list_widget.setItemWidget(item, custom_head_item)
self.list_widget.addItem(item)
custom_item = CustomListItem()
item = QtWidgets.QListWidgetItem(self.list_widget)
item.setSizeHint(custom_item.sizeHint())
self.list_widget.addItem(item)
self.list_widget.setItemWidget(item, custom_item)
vertical_layout = QtWidgets.QVBoxLayout()
vertical_layout.addWidget(self.list_widget)
widget = QtWidgets.QWidget()
widget.setLayout(vertical_layout)
self.setCentralWidget(widget)
self.show()
app = QtWidgets.QApplication(sys.argv)
ui = MainWindowUI()
sys.exit(app.exec_())
이 마지막 나던 작동합니다. –
스타일 시트 자체에 배경색을 설정하십시오. listWidget-> setStyleSheet ( "QListWidget :: 항목 {" "국경 스타일 : 고체;" "국경 폭 : 1 x 1 픽셀;" "국경 - 색상 : 검정;" "배경 색 : 녹색;" ""(self.list_widget.setStyleSheet " QListWidget :: 항목 { 국경 스타일 : 고체, 국경 폭 :"} " – Naidu
가 작동하지 않습니다, 이것은 내가 무슨 짓을 1 픽셀의, 국경 색상 :background-color : green; } "" ") 다음과 같은 첫 번째 항목에 배경색을 추가하십시오. item.setBackground (QtGui.QColor (255, 255, 100)) 있어 : 모두 녹색 색상의 항목 (스타일 시트로 설정) –