我正在尝试制作一个文本框,当有人在其上滚动鼠标滚轮时它会改变值。具体来说,我的目标是让文本框中的数字在我向上滚动时增加,在我向下滚动时减少。但是,我无法弄清楚 MouseWheelHandler。我简化了我的代码,只是将值更改为“UP”或“DOWN”,但它不起作用。它虽然编译。我也用 event.preventDefault() 尝试过,但这似乎没有任何效果。
private TextBox valueField = new TextBox();
...
...
valueField.addMouseWheelHandler(new MouseWheelHandler() {
public void onMouseWheel(MouseWheelEvent event) {
//event.preventDefault();
if(event.isNorth()) {
valueField.setText("UP");
} else {
valueField.setText("DOWN");
}
}
});
编辑:我刚刚在 Chromium 和 Opera 中测试过,效果很好。不幸的是,它仍然无法在我支持的浏览器(Firefox 和 IE)中运行。
编辑:决定尝试原生 Javascript 方法。我的 Javascript 技能很弱,所以我仍然需要一些帮助。