質問

I'm trying to get like a checkerboard pattern into a QListWidget. for example, have the first item in the list a dark grey background, and the second item in the list would have a light grey background and keep alternating like that as it goes down. Is there a simple way to accomplish this?

I know I can do it by creating a class, extending a QListWidget and then just set the styles in it each time the list updates but I'm looking for the simplest way possible. Any answers would be helpful.

役に立ちましたか?

解決

 listWidget->setAlternatingRowColors(true);

It's a built-in property of Qt.

If you use designer:

enter image description here

他のヒント

I believe this should work

myList->setAlternatingRowColors(true);
myList->setStyleSheet("alternate-background-color: white;background-color: black;");

use pseudo-state - :alternate in stylesheet

Example:

QListView::item {
    background-color: #1C80A6;
    color: white;}
QListView::item:alternate {
    background-color: white;
    color: #1C80A6;}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top