rmajly 发表于 2024-1-29 22:59:33

求助:如何使鼠标中间滚轮滚动时,scrollbar滑块同步滚动

本帖最后由 rmajly 于 2024-1-29 23:01 编辑

想使鼠标中间滚轮滚动时,scrollbar滑块同步滚动,但下面的代码不起作用,请指教import win.ui;
import mouse;
/*DSG{{*/
var winform = win.form(text="aardio form";right=320;bottom=469)
winform.add(
scrollbar={cls="scrollbar";left=136;top=77;right=207;bottom=396;edge=1;z=1}
)
/*}}*/
winform.scrollbar.setRange(1,100)

// 捕获鼠标滚轮事件
winform.onmousewheel = function(wheelDelta, x, y){
    var pos = winform.scrollbar.setRange(1,100)
    if(mouse.mb.roll(-10)){
      // 向上滚动
      pos = pos - 10
    }else{
      // 向下滚动
      pos = pos + 10
    }
    // 更新滚动条位置
    winform.scrollbar.getRange();
}
winform.show();
win.loopMessage();


风行者 发表于 2024-1-29 23:12:34

创建鼠标跟踪器,就可以用鼠标滑轮事件

import win.ui;
import mouse;
import console
/*DSG{{*/
var winform = win.form(text="aardio form";right=320;bottom=469)
winform.add(
scrollbar={cls="scrollbar";left=136;top=77;right=207;bottom=396;edge=1;z=1}
)
/*}}*/

//鼠标跟踪器
import win.ui.tracker
w = win.ui.tracker(winform)
winform.scrollbar.setRange(1,100)

w.onMouseWheel = function(flags,delta,lParam){
    delta = delta/(120/3);
        winform.scrollbar.pos -= delta
       
}

winform.show();
win.loopMessage();

rmajly 发表于 2024-1-30 00:39:29

风行者 发表于 2024-1-29 23:12
创建鼠标跟踪器,就可以用鼠标滑轮事件

风行老大就是牛,谢谢了!
页: [1]
查看完整版本: 求助:如何使鼠标中间滚轮滚动时,scrollbar滑块同步滚动