2013-08-06 8 views
0

스윙에서 응용 프로그램을 개발 중입니다. 두 대의 모니터가 연결되어 있으면 응용 프로그램이 표시되지 않습니다. 아이콘이 통합 사이드 바에 나타나지만 창이 보입니다. 제가 기본으로 돌아가서 오라클에서 HelloWorldSwing.java를 실행두 번째 모니터가 왼쪽에있을 때 스윙 응용 프로그램이 단일하게 표시되지 않습니다.

http://docs.oracle.com/javase/tutorial/uiswing/examples/start/HelloWorldSwingProject/src/start/HelloWorldSwing.java

을 tuorials과 같은 문제가 존재한다. 그런 다음 Monitor 1을 왼쪽에 놓으면 HelloWorld가 왼쪽 상단 모서리에 나타납니다.

메인 모니터가 오른쪽에있을 때 HelloWorldSwing (및 스윙 앱이 일반적으로)을 Unity에 표시하려면 어떻게해야합니까?

내 화면 구성 : 모니터 1 (노트북 화면) 화면 1280x800 모니터 2 ("알 수없는")이 왼쪽에 1440x900 배경

모니터. 내가에 다음이 내 ~/.xprofile :에서 setLocation는 다중 모니터 잘 대처 간단한

private static void createAndShowGUI() { 
    //Create and set up the window. 
    JFrame frame = new JFrame("HelloWorldSwing"); 
    frame.setLocation (50, 50); 
    ... 

xrandr --newmode "1680x1050" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync 
xrandr --addmode VGA1 1680x1050 
xrandr --newmode "1440x900" 106.50 1440 1528 1672 1904 900 903 909 934 -hsync +vsync 
xrandr --addmode VGA1 1440x900 

답변

0

좋아 그것입니다. 모니터 2가 남아있을 때 기본 위치 (setLocation이 호출되지 않은 경우)가 화면에서 벗어난 것처럼 보입니다.

0,0이 예상대로 왼쪽 상단 왼쪽에 있습니다. 그러나 setLocation (0,0)을 사용하면 윈도우의 닫기/최소화/최대화 버튼이 단일 위쪽 막대로 가려집니다.

유니폼 상단 표시 줄/측면 표시 줄과 통합하려면 일부 플랫폼 관련 자료가 필요합니다.