2016-11-18 4 views
-1

私はタッチパッドに慣れているのでスムーズにスクロールすることができますが、Javaロボットではシミュレートできません。マウスホイールは整数パラメータとスクロールのみを実行しています。 Javaでスムーズにスクロールをシミュレートできますか?Javaロボットによる円滑なスクロール方法は?

robot.mouseWheel(a); // int a 
+0

すでに試さなかった[この](http://stackoverflow.com/questions/15714609/robot-class:

あなたはそれにもかかわらず行うことができますことは、ロボットのスクロールが速度を遅くすることです - マウスホイールが動作しない)? – user6904265

+0

@ user6904265、それは同じではなく、スクロールして動作します。 大きなマウスホイールのステップではなく、たとえばpxでスクロールしたい。 –

+0

@Антонtheresのユニットを回避する方法は今です。これらのノッチは、単にポインティングデバイスが提供するものです。残りはOSに依存しています。遅いスピードでスクロールしたいだけなら、実装するのはかなりシンプルです。 – Paul

答えて

0

(あなたが尋ねる前に:それは、測定がdocsで命名された方法です)スクロールの単位は常に「ホイールのノッチ」によるであろう。これはハードウェア(具体的にはマウス)によって実装される方法です。 「ノッチ」ごとにスクロールされるピクセル数は、OS構成にすぎません。あなたは純粋なJavaでそれを混乱させることはできませんし、それが可能であっても、私はそれをお勧めしません。

import java.awt.Robot; 

public class Test{ 
    public static void main(String[] args) 
     throws Exception 
    { 
     //time to switch to a specific window where the robot ought to be tested 
     try{ Thread.sleep(2000); }catch(InterruptedException e){} 

     Robot r = new Robot(); 
     for(int i = 0; i < 20; i++){ 
      //scroll and wait a bit to give the impression of smooth scrolling 
      r.mouseWheel(1); 
      try{ Thread.sleep(50); }catch(InterruptedException e){} 
     } 
    } 
} 
+0

はい、私のコードはこの例のようになりました...私はステップを減らす方法があると思いました。 –

関連する問題