2013-07-04 2 views
2

X 윈도우 (다른 프로세스에 속함)가 있고, 실제로 크기를 조정하지 않고 해당 윈도우의 크기 조정 이벤트를 트리거하려고합니다.X 창의 트리거 크기 조정 이벤트

내 첫 번째 접근 방식은 창 크기를 두 번 조정하고 다시 원래 크기로 돌아가는 것이지만 실패했습니다. 문제는 문제의 창이 전체 화면으로 표시된다는 것인데, 분명히 XResizeWindow 또는 XMoveResizeWindow을 호출하면 아무런 의미가 없습니다. 창이 전체 화면 모드가 아닌 경우 잘 작동합니다.
이것은 빠른 테스트를 위해서만 사용되었으므로 X 서버에서 해당 창의 크기 조정 이벤트를 가짜 주입 할 수 있는지 궁금해하기 시작했습니다. 꽤 쉬워 보이는 MS Windows의 경우 인터넷 검색을하는 동안 많은 예제를 찾았지만 X에서는 운이 좋지 않은 것처럼 보입니다.

배경 : 전체 화면으로 VMware Player 인스턴스를 시작하고 부팅 한 후 Windows 게스트가 호스트에 따라 해상도를 변경하지 않습니다. 대부분 VMware Tools가 게스트에 설치되어 있기 때문에 가능합니다.) VM은 화면 크기가 다른 여러 대의 컴퓨터에서 사용되므로 올바른 해상도로 이미지를 미리 구성 할 수 없습니다. 현재 사용자는 해상도가 틀리면 전체 화면을 종료하고 다시 입력하라는 메시지를 듣지 만 매우 불편합니다. 그래서 내 생각은 VMplayer에게 부팅 후 크기가 조정되었음을 알려주는 것이었지만 어쩌면 더 나은 접근 방법이있을 수 있습니다 ...

+0

강제로 전체 화면 모드에서 창을 끈 다음 다시 켜십시오. 예를 들어 클라이언트 메시지를 보내야합니다. [여기] (http://fixunix.com/xwindows/91849-toggling-fullscreen.html). –

답변

1

XSendEvent 기능을 사용하십시오. 그것은 바로 이런 이유로 존재합니다.

관련 문제