私は非常に大きなデータの見方をしています。ユーザー用のスクロールバーが必要ですが、スクロールバーが上下矢印 (またはキーボードの上下キー) を押したり、ページアップを行うトラック領域をクリックしたりする標準的な方法をオーバーライドしたいと考えています。ページダウン。これは、データがビューにストリーミングされ、JScrollBar の「最小/最大/値」のモデルが機能しないためです。
これらのマウスまたはキーイベントを処理する標準的な方法は、スクロールバーの値を「単位増分」(小さい値) または「ブロック増分」(大きい値) のいずれかで調整することです。 クリックしたときにスクロールバーの値を変更したくありません。「ユーザーが1ブロック上にスクロールするように要求した」または「ユーザーが1単位下にスクロールするように要求した」というイベントを受け取りたいだけです。これを行う方法を知っている人はいますか?
ところで、BasicScrollBarUI$TrackListener.mousePressed(MouseEvent)
クリックを処理するように見え、常に を呼び出しますscrollbar.setValue(newValue)
。だから私は運が悪いかもしれません:(
おそらく、SWT スクロールバーでそれを行う方法はありますか?