相关疑难解决方法(0)

鼠标滚轮监听器无法在jscrollbar中工作

我正在netbeans平台(netbeans模块)中开发一个桌面应用程序,其中我有一个desktoppane和一个jscrollbar.我已经实现了MouseWheelListener并添加了

scrollBar.addMouseWheelListener(this);
Run Code Online (Sandbox Code Playgroud)

在类的构造函数中.现在,当我滚动鼠标滚轮时,它不会滚动滚动条,虽然我正在获取值

 private void scrollBarMouseWheelMoved(java.awt.event.MouseWheelEvent evt) { 


 System.out.println("mouse value is------------ " + evt.paramString());
}
Run Code Online (Sandbox Code Playgroud)

以上sout的输出是

mouse value is------------ MOUSE_WHEEL,(8,49),absolute(0,0),button=0,clickCount=0,scrollType=WHEEL_UNIT_SCROLL,scrollAmount=3,wheelRotation=1
Run Code Online (Sandbox Code Playgroud)

我现在该怎么做才能在jscrollbar上启用mosue wheel事件?

我搜索过,但我发现了滚动窗格的事件,但我正在寻找明确的滚动条..

我删除了额外的代码,并在以下示例代码中显示了我要查找的内容

    public final class ScrollableWindow1TopComponent extends TopComponent implements ComponentListener, MouseWheelListener {

    private javax.swing.JScrollBar scrollBar;
    private javax.swing.JDesktopPane scrollableGraphnewContainer;

    public ScrollableWindow1TopComponent() {
      this.addComponentListener(this);
      scrollBar.addMouseWheelListener(this);

    }
     private void scrollBarMouseWheelMoved(java.awt.event.MouseWheelEvent evt) {                                          
       System.out.println("mouse value is------------ " + evt.paramString());
    }
     private void scrollBarAdjustmentValueChanged(java.awt.event.AdjustmentEvent evt) { 
      //code that works fine 
    }
  }
Run Code Online (Sandbox Code Playgroud)

java swing mouseevent netbeans-platform jscrollbar

3
推荐指数
1
解决办法
4765
查看次数

标签 统计

java ×1

jscrollbar ×1

mouseevent ×1

netbeans-platform ×1

swing ×1