首页| 论坛| 消息

回复: QSlider中怎么设置让鼠标一点就让滚动块马上定位到鼠标点击的地方?
#6 [wd007 01-08 23:12]
呵呵,学习一下,感谢
#7 [long5337 01-18 12:01]
学习学习!!
#8 [syilong2006 05-11 15:33]
老大把您的作品给发给我看看嘛!
e_mail:syilong@126.com
#9 Re:QSlider中怎么设置让鼠标一点就让滚动块马上定位到鼠标点击的地方?无副作用 [jiaoxing3 11-26 16:14]
可以使用事件过滤,代码如下
switch(event->type())
{
case QEvent::MouseButtonPress:
{
if(((QMouseEvent *)event)->button() == Qt::LeftButton)
{
int max = ((QSlider*)obj)->maximum();
int min = ((QSlider*)obj)->minimum();
int pointPos = ((double)((QMouseEvent *)event)->x()) / ((QSlider*)obj)->width()*(max - min)+min;
if(abs(pointPos - ((QSlider*)obj)->value())> (((QSlider*)obj)->pageStep()) )
{
((QSlider*)obj)->setValue(pointPos);
return true;
}
else
..
#10 回 jiaoxing3 的帖子 [gintonic 05-14 14:51]
jiaoxing3:可以使用事件过滤,代码如下
switch(event->type())
{      
case QEvent::MouseButtonPress:
            {
....... (2010-11-26 16:14) 
你好,你这个代码在水平slider里可以用,在垂直的slider里就用不了了,我把代码中的x改成y,width改成height也还是不成功,你知道应该怎么改么

<< 1 2 >> (2/2)

回复 发表
主题 版块