Название: Фиксированный slider у QSrollBar
Отправлено: eugeniy.bogdan от Май 07, 2009, 12:25
Всем привет!
Есть такая задача - сделать фиксированный размер у слайдера в ScrollBar. В качестве стиля использую qss файл. В qss прописывал стиль
QScrollBar::handle:vertical { max-height: 20px; height: 20px; }
но рузультат оказался нулевой. Затем попробовал реализовать свой свой стиль где переопределил метод subControlRect. Но видать одновременное использовать qss и стиль неполучится. Выход вижу в написании своего ScrollBar'a, в котором, как я понимаю, нужно переопределить метод paintEvent, но как заставить прорисовать именно именно slider?
Название: Re: Фиксированный slider у QSrollBar
Отправлено: IGHOR от Май 13, 2009, 22:09
Я когдато писал код, в катором был фиксирован слйдер поищите в коде, может есть что нужно, он работает, кинул бы только то что нужно, но времени нет, пишу дипломную setStyleSheet(" QScrollBar:horizontal {" " border-radius: 10px;" " border: 2px solid black;" " background: white;" " height: 60px;" " margin: 10px 63px 10px 63px;" " }"
" QScrollBar::handle:horizontal {" " border: 1px solid black;" " border-radius: 8px;" " background: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 0," " stop: 0 #0000FF , stop: 0.15 #5050FF , stop: 0.5 #9090FF , stop: 0.85 #5050FF, stop: 1 #0000FF);" " min-width: 60px;" " }"
" QScrollBar::handle:horizontal:pressed{" " border: 1px solid black;" " border-radius: 8px;" " background: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 0," " stop: 0 #9090FF , stop: 0.15 #5050FF , stop: 0.5 #0000FF , stop: 0.85 #5050FF, stop: 1 #9090FF);" " min-width: 60px;" " }"
" QScrollBar::add-line:horizontal {" " image: url("+localDir+"/Data/Pictures/Buttons/BigRight.png);" " width: 60px;" " subcontrol-position: right;" " subcontrol-origin: margin;" " border: 0px solid black;" " }"
" QScrollBar::add-line:horizontal:pressed {" " image: url("+localDir+"/Data/Pictures/Buttons/BigRightPressed.png);" " width: 60px;" " subcontrol-position: right;" " subcontrol-origin: margin;" " border: 0px solid black;" " }"
" QScrollBar::sub-line:horizontal {" " image: url("+localDir+"/Data/Pictures/Buttons/BigLeft.png);" " width: 60px;" " subcontrol-position: left;" " subcontrol-origin: margin;" " border: 0px solid black;" " }"
" QScrollBar::sub-line:horizontal:pressed {" " image: url("+localDir+"/Data/Pictures/Buttons/BigLeftPressed.png);" " width: 60px;" " subcontrol-position: left;" " subcontrol-origin: margin;" " border: 0px solid black;" " }"
" QScrollBar:vertical {" " border-radius: 10px;" " border: 2px solid black;" " background: white;" " width: 60px;" " margin: 63px 10px 63px 10px ;" " }"
" QScrollBar::handle:vertical {" " border: 1px solid black;" " border-radius: 8px;" " background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1," " stop: 0 #0000FF , stop: 0.15 #5050FF , stop: 0.5 #9090FF , stop: 0.85 #5050FF, stop: 1 #0000FF);" " min-height: 60px;" " }"
" QScrollBar::handle:vertical:pressed {" " border: 1px solid black;" " border-radius: 8px;" " background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1," " stop: 0 #9090FF , stop: 0.15 #5050FF , stop: 0.5 #0000FF , stop: 0.85 #5050FF, stop: 1 #9090FF);" " min-height: 60px;" " }"
" QScrollBar::add-line:vertical {" " image: url("+localDir+"/Data/Pictures/Buttons/BigDown.png);" " height: 60px;" " subcontrol-position: bottom;" " subcontrol-origin: margin;" " border: 0px solid black;" " }"
" QScrollBar::add-line:vertical:pressed {" " image: url("+localDir+"/Data/Pictures/Buttons/BigDownPressed.png);" " height: 60px;" " subcontrol-position: bottom;" " subcontrol-origin: margin;" " border: 0px solid black;" " }"
" QScrollBar::sub-line:vertical {" " image: url("+localDir+"/Data/Pictures/Buttons/BigUp.png);" " height: 60px;" " subcontrol-position: top;" " subcontrol-origin: margin;" " border: 0px solid black;" " }"
" QScrollBar::sub-line:vertical:pressed {" " image: url("+localDir+"/Data/Pictures/Buttons/BigUpPressed.png);" " height: 60px;" " subcontrol-position: top;" " subcontrol-origin: margin;" " border: 0px solid black;" " }"
" QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical ," "QScrollBar::add-page:horisontal, QScrollBar::sub-page:horisontal{" " background: transparent; background-color:transparent;"
" }");
|