qt qscrollbar实例如何根据value 得出移动多少像素

滚动条QScrollBar一些事件不知道怎么处理,大家帮帮忙我使用QScrollBar。我想知道怎么监听或有什么事件可以处理鼠标单击向上、向下箭头。单机空白处(除去中间的滑块和箭头)我找了很久了,都没有找到,不管怎么样,知道的童鞋请帮帮忙,多谢了
不是QAbstractSlider的几个singal么?就是void actionTriggered ( int action )& void rangeChanged ( int min, int max )& void sliderMoved ( int value )& void sliderPressed ()& void sliderReleased ()& void valueChanged ( int value )& 这几个,不过这东西没用过,可能有误QScrollBar类
QScrollBar类参考
QScrollBar窗口部件提供了水平的或垂直的滚动条。
#include &&
继承了和。
( QWidget&*&parent, const&char&*&name = 0 )
( Orientation&orientation, QWidget&*&parent, const&char&*&name = 0 )
( int&minValue, int&maxValue, int&lineStep, int&pageStep, int&value, Orientation&orientation, QWidget&*&parent, const&char&*&name = 0 )
virtual void
( Orientation )
Orientation
virtual void
( bool&enable )
virtual void
( const&QPalette&&&p )
( int&value )
( int&value )
bool &- 用户是否已经在滑块上点击鼠标并且正在移动它&(只读)
int &- 当前线步
int &- 滚动条的当前最大值
int &- 滚动条的当前最小值
Orientation &- 滚动条的方位
int &- 当前页步
bool &- 滚动条跟踪是否生效
int &- 滚动条的当前值
virtual void
( QHideEvent * )
QScrollBar窗口部件提供了水平的或垂直的滚动条。
滚动条允许用户控制一个程序可定义范围内的值并且给用户一个的当前值得可视化表示。
滚动条包含四个分别的控制:
line-up和line-down控制是用户可以用来向上或向下移动线步的小按钮。“线”的意思是可以配置的。在编辑器和列表框中,它是指一行文本,在一个图片查看器中它也许是指20个像素。
slider是表示滚动条的当前值的把手,用户可以拖动它来改变值。滚动条的这部分有时被称作“拇指”。
page-up/page-down控制是滑块滑行的区域(滚动条的背景)。点击这里让滚动条向点击的方向移动。“页”的意思也是可以配置的:在编辑器和列表框中,它是指和这个窗口部件空间相同的行数。
QScrollBar只有几个自己的函数,它多数依赖于。最有用的函数是()直接设置滚动条的值,()、()、()和()模拟点击的效果(对于快捷键很有用),()定义()和()的值,并且()设置滚动条的()和()。QScrollBar有一个方便的可以设置这些属性的构造函数。
一些图形用户界面风格(例如,提供的Windows和Motif风格)也使用pageStep()的值来计算滑块的大小。
除了来自的访问函数之外,QScrollBar还有完整的一套信号:
() - 当滚动条的值已经发生改变时,被发射。
()决定在用户操作期间,这个信号是否被发射。
() - 当用户开始拖动滑块时,被发射。
() - 当用户拖动滑块时,被发射。
() - 当用户释放滑块时,被发射。
() - 当滚动条已经向下或向右移动了一个线步时,被发射。线步在QRangeControl中被定义。
() - 当滚动条已经向上或向左移动了一个线步时,被发射。
() - 当滚动条已经向下或向右移动了一个页步时,被发射。
() - 当滚动条已经向上或向左移动了一个页步时,被发射。
QScrollBar只提供整数范围。注意尽管QScrollBar可以处理很大的数字,当前屏幕上的滚动条不能有效地控制超过100000像素的范围。除此以外,它使用户使用键盘或者鼠标来控制这个滚动条都很困难。
滚动条可以被键盘控制,但是它的默认()是。使用()来让生效。对于绑定键的列表,请参考()。
如果你需要在一个界面上添加滚动条,请考虑使用类,它封装了滚动条的常用方法。
也可以参考、、、和。
成员函数文档
QScrollBar::QScrollBar ( &*&parent, const&char&*&name = 0 )
构造一个垂直的滚动条。
parent和name参数被发送给的构造函数。
QScrollBar::QScrollBar ( &orientation, &*&parent, const&char&*&name = 0 )
构造一个滚动条。
orientation必须是Qt::Vertical或Qt::Horizontal。
parent和name参数被发送给的构造函数。
QScrollBar::QScrollBar ( int&minValue, int&maxValue, int&lineStep, int&pageStep, int&value, &orientation, &*&parent, const&char&*&name = 0 )
构造一个滚动条,它的值不能小于minValue或者大于maxValue,线步大小为lineStep并且页步大小为pageStep,它的值被初始化为value(它被使用()保证在范围之内)。
如果orientation是,滚动条是垂直的并且如果它是,则滚动条是水平的。
parent和name参数被发送给的构造函数。
bool QScrollBar::draggingSlider () const
如果用户已经在滑块上点击鼠标并且现在正在拖动它,返回真,否则返回假。详细情况请参考属性。
void QScrollBar::hideEvent ( &* ) [虚 保护]
当滚动条被隐藏时,这个函数被调用。
从中重新实现的。
int QScrollBar::lineStep () const
返回当前线步。详细情况请参考属性。
int QScrollBar::maxValue () const
返回滚动条的当前最大值。详细情况请参考属性。
int QScrollBar::minValue () const
返回滚动条的当前最小值。详细情况请参考>属性。
void QScrollBar::nextLine () [信号]
当滚动条向下或向右滚动一个线步时,这个信号被发射。
void QScrollBar::nextPage () [信号]
当滚动条向下或向右滚动一个页步时,这个信号被发射。
QScrollBar::orientation () const
返回滚动条的方向。详细情况请参考属性。
int QScrollBar::pageStep () const
返回当前页步。详细情况请参考属性。
void QScrollBar::prevLine () [信号]
当滚动条向上或向左滚动一个线步时,这个信号被发射。
void QScrollBar::prevPage () [信号]
当滚动条向上或向左滚动一个页步时,这个信号被发射。
void QScrollBar::setLineStep ( int )
设置当前线步。详细情况请参考属性。
void QScrollBar::setMaxValue ( int )
设置滚动条的当前最大值。详细情况请参考属性。
void QScrollBar::setMinValue ( int )
设置滚动条的当前最小值。详细情况请参考属性。
void QScrollBar::setOrientation (
设置滚动条的方位。详细情况请参考属性。
void QScrollBar::setPageStep ( int )
设置当前页步。详细情况请参考属性。
void QScrollBar::setPalette ( const&&&&p ) [虚]
重新实现了虚函数()。
对于使用调色板p的Motif风格的滚动条,设置背景色为中间的颜色。
从中重新实现的。
void QScrollBar::setTracking ( bool&enable ) [虚]
设置滚动条跟踪是否生效为enable。详细情况请参考属性。
void QScrollBar::setValue ( int ) [slot]
设置当前滚动条的值。详细情况请参考属性。
void QScrollBar::sliderMoved ( int&value ) [信号]
当滑块被用户移动时,这个信号被发射,新滚动条的值value作为参数。
即使当跟踪被关闭,这个信号也被发射。
也可以参考、()、()、()、()和()。
void QScrollBar::sliderPressed () [信号]
当用户使用鼠标按下滑块时,这个信号被发射。
QScrollBar::sliderRect () const
返回滚动条滑块的范围。
也可以参考()。
void QScrollBar::sliderReleased () [信号]
当用户使用鼠标释放滑块时,这个信号被发射。
int QScrollBar::sliderStart () const
返回滚动条滑块开始的像素位置。
这对于垂直滚动条相当于().(),对于水平滚动条相当于sliderRect().()。
bool QScrollBar::tracking () const
如果滚动条跟踪是生效的,返回真,否则返回假。详细情况请参考属性。
int QScrollBar::value () const
返回当前滚动条的值。详细情况请参考属性。
void QScrollBar::valueChanged ( int&value ) [信号]
当滚动条的值已经改变时,这个信号被发射,新滚动条的值value作为参数。
bool draggingSlider
这个属性保存的是用户是否已经在滑块上点击鼠标并且正在移动它。
通过()来获得属性值。
int lineStep
这个属性保存的是当前线步。
当设置线步时,如果新的线步与原来的设置不同,虚函数()将被调用。
也可以参考()、()和()。
通过()设置属性值并且通过()来获得属性值。
int maxValue
这个属性保存的是滚动条的当前最大值。
当设置这个属性时,如果需要,被调整,这样使范围仍有效。
也可以参考()。
通过()设置属性值并且通过()来获得属性值。
int minValue
这个属性保存的是滚动条的当前最小值。
当设置这个属性时,如果需要,被调整,这样使范围仍有效。
也可以参考()。
通过()设置属性值并且通过()来获得属性值。
orientation
这个属性保存的是滚动条的方位。
这个方位必须是(默认)或。
通过()设置属性值并且通过()来获得属性值。
int pageStep
这个属性保存的是当前页步。
当设置页步时,如果新的页步与原来的设置不同,虚函数()将被调用。
也可以参考()、和()。
通过()设置属性值并且通过()来获得属性值。
bool tracking
这个属性保存的是滚动条跟踪是否生效。
如果跟踪生效(默认),当滑块正在被拖动时,滚动条发射()信号。如果失效,只有当用户在移动滑块之后释放鼠标按键时,滚动条发射valueChanged()信号。
通过()设置属性值并且通过()来获得属性值。
这个属性保存的是滚动条的当前值。
通过()设置属性值并且通过()来获得属性值。
也可以参考()和()。
这个文件是一部分。
版权所有 &
。保留所有权利。
Copyright & 2002
Qt 3.0.5版关于QSCrollBar滚动条的问题 - QTCN开发网 - Powered by phpwind
查看完整版本: [--
关于QSCrollBar滚动条的问题
如图, 我在左边有一列控件, 右边是一滚动条, 我现在用的键盘事件控制左边的控件, 怎么让右边的滚动条也随之滚动呢?另外, 我还要去掉滚动条上面的上下按钮?改怎么弄
j建议你在左边的一列控件外面套一层QScrollArea,会自动滚动滚动条,不要单独加滚动条控件。
问题是, 用QScrollArea的话, 那滚动条的上下按钮能去掉吗, 另外, QScrollArea能变成透明吗?我的意思是, 用了QScrollArea后, 他的边框我不要求他显示出来, 还有能显示后面的背景色,好办吗?
上面介绍了去掉滚动条的上下按钮的方法
再请教楼主, 怎么用键盘事件控制控件被选择是, 滚动条滚动起来呢???
这个滚动起来要自己设,选设置滚动条的范围void setRange ( int min, int max ),然后根据列表的行数和总行数设置滚动条的当前位置void&&&&setValue ( int ),不过还是建议用QSrollArea,用findChild寻找到QSrollArea中的滚动条就可以取消上下按钮了。
我现在是用的QScrollArea, 我想用样式表去掉, 滚动条的上下按钮, 并且将QScrollArea的背景设置为透明这样我该怎么弄呢?
查看完整版本: [--
Powered by
Gzip disabled关于QScrollBar滑块样式求助的搜索推荐 -Mobile-TryCatch
>> 相关推荐
关于的搜索推荐
比如我现有一个QScrollBar:horizontal,我怎么设置里面滑块左边是一个贴图,右边又是一个贴图,然后中间填满另外一张贴图?就是把滑块分成三部分贴图
该回复于 09:50:36被版主删除
高手解答啊
http://doc./stable/stylesheet-examples.html
搜索QScrollBar
引用3楼wangxkww的回复:
http://doc./stable/stylesheet-examples.html
搜索QScrollBar
看过帮助文档了,貌似QSS这只能直接给滑块加贴一张图,不能分开贴
该回复于 09:04:19被版主删除
哦那是我没看清楚你试试给滑块加border-image试试效果
引用6楼wangxkww的回复:
哦那是我没看清楚你试试给滑块加border-image试试效果
border-image也只能贴一个图。。。 我走弯路解决了,去计算滑块的长度,然后通过qpainter和qpixmap做和滑块一样大小的图片,然后再贴上去。这样就不会贴一张图片时,但缩小或扩大时,图片变样。。。 还是谢谢你,,wangxhww,只有你回应我。。。+_+
除了重写QScrollbar,有方法去掉QScrollbar的上下三角箭头吗就是那个接口,加个参数就摆平的。
------------
有,用样式表:http://qt-project.org/doc/qt-4.8...
QScrollBar:vertical {
border: 0.5px solid #
background-color:#C6E2FF;
}QScrollBar::handle:vertical {
border: ...
qscrollbar 上下左右不是各有一箭^D示F在我O定stylesheet成@QScrollBar:left-arrow:horizontal,QScrollBar::right-arrow:horizontal {\
image: N...
------------
对JXL刚接触不熟啊,求例子。。。。
------------
你把固定的部分自己做个模板出来。jxl可以读取文件创建新WorkBook对象,你只需要把变化的数据...
有个 qtableWidget 的控件。由于设计需要我把它自带的滚动条都禁止了。用上了qscrollbar的控件来控制 qtableWidget 的滚动。 设定了信号槽的链接 这里的this-&gt...
有个 qtableWidget 的控件。由于设计需要我把它自带的滚动条都禁止了。用上了qscrollbar的控件来控制 qtableWidget 的滚动。 设定了信号槽的链接 这里的this-&gt...
1.问题如图,我现在无法解决这个问题,add-line与border有一条线的空隙。https://bugreports.qt-project.org/browse/QTBUG-206722.QMenu在设置的时候分割线横向的...
请问QScrollBar如何设置滑块的最小高度,现在最小都有60,如果解决了100分奉上!
------------
setMinimumHeight ( int min_height )
------------
这个好像...
我使用QScrollBar。我想知道怎么监听或有什么事件可以处理鼠标单击向上、向下箭头。单机空白处(除去中间的滑块和箭头)我找了很久了,都没有找到,不管怎么样,...
窗口这些样式把我弄乱了,WNDCLASS 有样式,CreateWindow 有样式,CreaeWindowEx 还有扩展样式,CREATESTRUCT 结构体里还有两个样式谁和谁是什么关系
---------...
各位大侠,以下虽然定义了两个样式,但样式二却包含了样式一了,也就是样式二的那个&ul&除了执行样式二之外,还同时执行了样式一,我想让他们两个独立,不...
在这两个样式下,默认的系统颜色是不同的,我做了一个textbox的颜色跟系统xp样式颜色一样,可以到了经典样式下,面板的颜色就变了。我要怎麽样才能判断系统加载的...
word中,“样式基准”和“后续段落样式”对样式设置有什么影响?
------------
样式基准是指当前创建的样式以那个样式为基础来创建,换句话说,当前样式将以【...
如题,怎么回事?程序就是一个单独的页面,没母版页之类的东西
------------
另外,样式表中的东西考到页面上,运行后也正常了怎么回事尼?
------------
------------
什么意思?字体?对齐?还是其它什么?
------------
CSS===========&input type=button onclick="chit()" value="change style"...}

我要回帖

更多关于 qscrollbar实例 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信