Problem with styleSheet
-
Hi,
I set the stylesheet just for the listView but it had the same result
this is the stylesheet I used in the picure:color: rgb(255, 255, 255); background-color: rgb(80, 80, 80);
I want the user to be able to change the theme of the app. so I have some stylesheets that user chooses from them and I apply them to the mainWindow.
But there is another problem. I set the stylesheet to the stylesheet above in the qt designer and when I run the app and I choose the stylesheet from the app look at the scrollbar:
color: rgb(0 ,0 ,0); background-color: rgb(255, 255, 255);
http://i63.tinypic.com/intwfa.pngand the album comboBox's backGround is the grey color too
-
-
Hi
If you dont use a name (the type) as @Devopia53 shows,
the style sheet is used for all on screen.
Also the scrollbar.
So you must exclude the scrollbar by using QListView and other typenames
so QScrollBar is not affected. -
Hi
So if I wanted to change the styleSheet I have to change the styleSheet of the objects in the ui one by one (like QLabels and QPushBurrons) ?
and also whaen I do:setStyleSheet("QMainWindow {"
"color: rgb(255, 255, 255);"
"background-color: rgb(80, 80, 80);"
"}"
"QListView {"
"color: rgb(255, 255, 255);"
"background-color: rgb(80, 80, 80);"
"}");every where is grey except the scrollbar. can I set the scrollbar to grey?
-
Yes. If you do not want all class/widget to be affected.
like scrollbar case.If they are the same settings, you can also use more names for same block
"QMainWindow, QListView {...}"
see here for examples
http://doc.qt.io/qt-5.5/stylesheet-examples.htmlFor scrollbar
http://doc.qt.io/qt-4.8/stylesheet-examples.html#customizing-qscrollbar -
the second page doesn't customize the scrillbars inside a QListView.
Why not? -
you mean it does not work or ?
"QScrollBar {
background: gray;
}" -
No it didn't work when I set the mainwindow's stylesheet to
QScrollBar {
background: gray;
}it looses the style and lookes like the picture I uploaded
-
@shahriar25 said:
QScrollBar {
background: gray;
}That would make the it look gray ? That is as it should be.
If you set a style sheet on it,
it will not use the rest from style.
So you cannot do both.If you set a style sheet. it will only use stylesheet settings
and might forget some it got from style.
They are not added together. Its ALL or nothing with style sheets.You cannot just change say, background. And it still used bitmaps from Style.
You will have to specify bitmaps in style sheet too.here is how it looks in windows
http://postimg.org/image/y9fp1edkz/ -
Hi,
I can't Thank you enough for the answers. I did it! -
@shahriar25
\o/ super :) -
I have one more Question:
I want the listview to show "Goto File->Add To List to add files"
or a background text for the labels saying "Album" when its empty
How shold I do that? -
@shahriar25 said:
well for the list view, you could have a start item saying that.
And then you then add thr real items, then remove it first. -
Yes that works but if I wanted it tobe in the middle if the listView than what?
and for the QLabel? -
@shahriar25
Well im not sure if you can make
it go to middle of the view.Well for the QLabel, you can just set the text?
-
Yes I can but does it look good?
alright I will leave it empty.
thank you again -
@shahriar25
well QLabel can show html so it can look pretty much as you like
http://doc.qt.io/qt-5.5/richtext-html-subset.html
Color and font wise. -
I did it with rich text
-
@shahriar25
So it turned out as you like? -
Yes it did