QSS

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 3. července 2015; kontroly vyžadují 5 úprav .

QSS ( anglicky  Qt Style Sheets  - Qt style sheets ) je mechanismus, který vám umožňuje přizpůsobit vzhled widgetů v knihovně Qt .

Popis

QSS byl silně inspirován kaskádovými styly CSS pro HTML , a proto má podobnou syntaxi. Konkrétně, stejně jako v CSS, i v QSS můžete změnit tvar, barvy, průhlednost prvku a také vizuální odezvu na události (například kliknutí na tlačítko). Styly lze připojit jak k samostatné komponentě, tak k celé aplikaci, a to metodou ::setStyleSheet()dostupnou jak pro jednotlivé widgety, tak pro QApplication.

Qt Designer poskytuje možnost integrovat styly QSS, což usnadňuje jejich testování a vývoj. Když spouštíte aplikaci Qt, můžete na ni také použít šablonu stylů pomocí syntaxe příkazového řádku formuláře:

MyApp -stylesheet MyStyle.qss

Podpora QSS se objevila v Qt od verze 4.3 [1] , nicméně před verzí 4.5 tento mechanismus na platformě Mac OS X nefungoval

Mechanismus QSS vám umožňuje zcela oddělit vizuální design od vývoje aplikací a zapojit webové designéry do stylingu aplikací . Spolu se subsystémy QtScript a QML  je to jeden z kroků, jak přiblížit programování Qt vývoji webu .

Vlastnosti QSS

Selektory QSS jsou primárně názvy tříd widgetů Qt . Můžete je také zadat například názvem konkrétní instance widgetu a QPushButton#okButtontaké hodnotami určitých atributů ( QPushButton[x="0"][y="0"]). Stejně jako v CSS můžete hledat prvek (v případě QSS widget) vnořený do widgetu zadaného typu, například QFrame > QDial(přímý potomek) nebo QFrame QDial(jsou povoleny přechodné úrovně vnoření).

Příklady kódů QSS

Nastavuje poloměr ohraničení pro třídy QPlainTextEdit,QSpinBox,QTimeEdit,QLineEdit:

QPlainTextEdit , QSpinBox , QTimeEdit , QLineEdit { border-radius : 5 ;}

Zkontroluje hodnotu upravitelné vlastnosti třídy QComboBox, pokud je podmínka pravdivá, nastaví obrázek ze souboru prostředků a šířku ohraničení:

QComboBox [ editable = "true" ] { border-image : url ( :/Components/pictures/frame.png ) 4 ; šířka okraje : 3 }

Poznámky

  1. Qt 4.3 a styly Archivovány z originálu 9. srpna 2011.  (eng.) , Qt Labs - Blogy pro vývojáře

Literatura

  • Jasmine Blanchett, Mark Summerfield. Ch. 19. Navázání dialogu s uživatelem. Použití Qt Style Sheets // Qt4: GUI Programming in C++ = C++ GUI Programming with Qt 4. Druhé vydání, revidované. - Moskva: KUDITs-PRESS , 2008. - S. 447-461. — 718 s. - 2500 výtisků. kopírovat.  - ISBN 978-5-91136-059-7 .
  • Max Schlee. Ch. 26. Prvky se stylem. Použití kaskádových stylů dokumentu // Qt 4.5. Profesionální programování v C++ . - Petrohrad: BHV, 2010. - S.  433 -440. — 896 s. - 1500 výtisků. kopírovat.  - ISBN 978-5-9775-0398-3 .

Odkazy