java robot 예제

java robot 예제

답변 : 음, 그래, 확실히 … 나는 조금 농담이라고 말합니다. 좋아, 정말 무슨 일이 있었는지 내 Mac에서이 자바 로봇 예제 코드를 개발하는 동안, 나는 약 10 번 재부팅했다. Java Robot 클래스를 사용하면 기본 운영 체제로 머리를 찌르고 있으며, 적어도 Mac OS X 시스템에서 GUI 이벤트를 엉망으로 만들면 많은 나쁜 일이 발생할 수 있습니다. 즉, 자바 로봇 예제 코드는 마우스를 사용하고 Java Robot 클래스를 사용하여 다른 시스템 창에 키보드 키 입력을 생성하는 방법을 보여 주며, 나는 그것이 꽤 멋지다고 생각합니다. 자바 로봇 클래스 FAQ : 당신은 나에게 자바 로봇 클래스를 사용하는 방법의 예를 보여 줄 수 있습니까? 일부 플랫폼에서는 하위 수준 입력 제어에 액세스하려면 특별한 권한 또는 확장이 필요합니다. 현재 플랫폼 구성에서 입력 제어를 허용하지 않으면 로봇 개체를 생성하려고 할 때 AWTException이 throw됩니다. 예를 들어 X-Window 시스템은 XTEST 2.2 표준 확장이 X 서버에서 지원되지 않거나 활성화되지 않은 경우 예외를 throw합니다. 클래스를 사용하여 입력 이벤트를 생성하는 것은 이벤트가 플랫폼의 기본 입력 큐에서 생성된다는 점에서 AWT 이벤트 큐 또는 AWT 구성 요소에 이벤트를 게시하는 것과 다릅니다. 예를 들어 Robot.mouseMove는 마우스 이동 이벤트를 생성하는 대신 실제로 마우스 커서를 이동합니다. 아래의 Java 코드가 자체적으로 라고 생각하기 때문에 이것을 너무 많이 설명하지는 않을 것입니다.

나는, 그러나, 몇 가지 중요한 “교훈”을 지적하고 싶다 : 당신은 질문이나 제안이있는 경우 그냥 아래에 메모를 남겨. 다시 말하지만, 컴퓨터 시스템에서 Java Robot 클래스를 사용할 때운영 체제를 쉽게 나쁜 상태로 사용할 수 있으므로 매우 주의하십시오. 다음은 Robot 클래스가 키보드를 제어하고 빈 메모장 문서로 입력하는 방법의 예입니다. 메모장은 이 문서에서 설명한 대로 프로세스 및 런타임을 사용하여 호출됩니다. 지금은 충분한 토론, 여기에 내 자바 로봇 클래스에 대한 소스 코드입니다, 매우 완전히 맥 OS X에서 테스트 10.5 및 10.6 시스템: 나는이 자바 로봇 클래스 예제 코드가 도움이되기를 바랍니다. 언급 했듯이 Java Robot 클래스를 사용 하 여 다른 시스템 응용 프로그램에 마우스 및 키보드 키 입력 이벤트를 생성 하는 방법을 보여 줍니다. Robot 클래스 메서드에 대한 자세한 내용은 Java Robot 클래스 Javadoc을 참조하십시오. 난 그냥 내 아이맥에서이 시도, 스노우 레오파드의 최신을 실행하는 가장 큰 버전 (10.6.6)과 자바 (빌드 1.6.0_22-b04-307-10M3261), 그것은 괜찮았다. 다행히 난 그냥 키보드 입력을 잃고 유지, 하지만 난 여전히 마우스를 사용할 수 있었다, 그리고 마우스를 사용 하 여 쉽게 내 시스템을 재부팅할 수 있었다.

그래서, 경고의 단어로, 당신은 인터넷에서 거기 밖으로 이러한 다른 자바 로봇 클래스 의 일부를 볼 때 – 조심 – 올바른 솔루션은 내가 여기에서 본 다른 자바 로봇 예제만큼 쉽지 않다. 최신 Java 6와 스노우 레오파드에서 작동하지 않는 것 같습니다 자바 AWT 패키지의 로봇 클래스는 테스트 자동화, 자체 실행 데모 및 마우스와 키보드의 제어가다른 응용 프로그램의 목적을 위해 네이티브 시스템 입력 이벤트를 생성하는 데 사용됩니다 필요한. Robot의 주요 목적은 Java 플랫폼 구현의 자동화된 테스트를 용이하게 하는 것입니다. 간단히 말해서, 클래스는 마우스와 키보드 장치를 제어 할 수 있습니다. 나는 단순히 아래와 같이 이러한 로봇 방법을 호출하지 않고 내 Mac OS X 시스템에서 제대로 작동하는이 Java Robot 예제 코드를 얻을 수 없으므로 이러한 설정을 “사용해야한다”고 말하고 싶지만 아직 다른 운영 체제에서이 코드를 시도하지 않았습니다.

Comments are closed.

    About

    This is the deafult sidebar, add some widgets to change it.