2016-11-18 22 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 구성에 불과합니다. 당신은 순수한 자바로 그것을 망쳐 놓을 수 없으며, 비록 그것이 가능했다하더라도 나는 그것을 추천하지 않을 것이다.

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

예, 내 코드는 이미이 예제와 비슷합니다 ... 단계를 줄이는 방법이 있다고 생각했습니다. –