QT Designer - ustawianie kolorów

0

Cześć,
mam pewien problem dotyczący QT designera, dokładnie chodzi o ustawianie kolorów poszczególnych przycisków, jak i całej aplikacji.
ustawiłem pewien kolor dla tła aplikacji, konkretnie to kliknąłem na puste pole, i w zmianie stylu arkuszu wklepałem:

color: orange;
background-color: rgb(27, 27, 27);

co dało pomarańczowy kolor tekstu i ciemne tło
jednak ciemne nie zrobiło się tylko tło aplikacji, ale też przycisków, lineeditów itd.
co muszę zrobić aby ustawić inne tło dla np. WSZYSTKICH lineeditów
wiem że mogę klikać na poszczególny element i edytować go oddzielnie, ale w mojej aplikacji znajduje się ok. 100 lineeditów, więc nie będę uzupełniał każdego ręcznie

z góry dzięki za pomoc :)

0

Nie określiłeś dokładnie do czego ma być zastosowany ten style sheet-twój zapis oznacza,że dla wszystkich widgetów.Jeśli ma się stosować wyłącznie do lineEditów,to winieneś zapisać go tak:

QLineEdit{
color: orange;
background-color: rgb(27, 27, 27);
}

i zapodać to jako qApp->setStyleSheet() co spowoduje,iż wszystkie lineedity(i klasy dziedziczące po nich też,ale tego na 100% pewien nie jestem bo dawno style sheetów nie używałem) w twojej aplikacji będą miały zapodany ten właśnie styl.

0

no dobra to Lineedity będą z tłem ale ja chcę zeby tło całej aplikacji też było inne

0

Razi dobrze prawi.Generalnie,tworzysz sobie duużego QStringa z wszelkimi ustawieniami:

QString styleString="QLineEdit{
color: orange;
background-color: rgb(27, 27, 27);
}
QMainWIndow{
tu ustawienia dla okien aplikacji
}
QComboBox{
tu ustawienia comboxa
}
QWidget{
A tutaj jakieś mocno generyczne ustawienia dla wszelakich widgetów w twoim programie.Na przykład jak wszystko u ciebie ma mieć niestandardowe tło,to zamiast powtarzać co chwila przy szegółowych sekcjach lepiej zapodaj to przy QWidget
}
"

I jego nastawiasz tak jak napisałem qApp->setStyleSheet(styleString);

0

oki dzięki, świetnie wytłumaczone

jednak podczas tworzenia aplikacji zastosowałem buttona który jest nieaktywny (czyli normalnie taki szary) gdy ustawie kolor tła, to button aktywny i nieaktywny jest taki sam, jak mogę ustawić osobne style dla nieaktywnego buttona?

0

Cóż,widzę że nie przeczytałeś w Assistancie rodziału "Qt Style Sheets" ;]
Zapodaj tą frazę w assistancie i czytaj uważnie od dechy do dechy.
A odpowiadając na pytanie pokrótce:owszem,jest możliwość użycia tzw pseudostanów widgetów (hovered,mouse entered/leaved,disabled/enabled i sporo innych).Są one opisane dokładnie w Asystencie.

Przy czym taka rada ode mnie-z mojej praktyki wynika,że te arkusze stylów są takie sobie,a to potemu,że w przypadku bardziej skomplikowanych stringów formatujących strasznie siada wydajność programu,a poza tym one tak trochę niepewnie działają-tj raz działa to formatowanie,raz nie(a przynajmniej,takie zachowanie widziałem w wersjach 4.5.0 i 4.6.1,może w 4.7 poprawili)
Dlatego jeśli myślisz o jakimś naprawdę dużym zmienianiu standardowego wyglądu aplikacji,to doradzam raczej użycie QStyle'ów.

0

ok, dzięki wielkie za pomoc :)
MasterBLB dostaniesz specjalne podziękowanie w opisie programu za ogólną pomoc z wieloma problemami które zadałem na forum :*
jeszcze raz dzięki

1 użytkowników online, w tym zalogowanych: 0, gości: 1