[java] 모니터 해상도에 관계없이 JFrame이 가운데에 나타나도록 설정하는 방법은 무엇입니까? [닫은]

Java로 작업하는 동안 응용 프로그램을 시작할 때 기본 창을 화면 중앙에 배치하기가 어렵습니다.

내가 할 수있는 방법이 있습니까? 그것은 수직 중심 일 필요는 없으며, 수평 정렬이 저에게 더 중요한 목표입니다. 그러나 수직 정렬도 환영합니다.



답변

나는 항상 이런 식으로했다 :

Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
this.setLocation(dim.width/2-this.getSize().width/2, dim.height/2-this.getSize().height/2);

thisJFrame은 어디에 관련되어 있습니까 ?


답변

사용하다 setLocationRelativeTo(null)

이 메소드는 a를 전달할 때 특별한 효과가 있습니다 null. Javadoc에 따르면 :

구성 요소가 null이거나이 구성 요소와 관련된 GraphicsConfiguration이 null 인 경우 창은 화면 중앙에 배치됩니다.

크기를 설정하거나을 호출 한 후 다음 pack()과 같이 표시하도록 설정하기 전에 수행해야합니다 .

frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);


답변

JFrame.setLocationRelativeTo(null)창 중앙에 전화 를 걸 수 있습니다 . 이것을 전에 넣어야합니다JFrame.setVisible(true)


답변

양식을 클릭하고 JFrame 속성으로 이동 한 다음 코드 탭으로 이동하여 확인하십시오 Generate Center.

여기에 이미지 설명을 입력하십시오


답변

이만큼 간단합니다 …

setSize(220, 400);
setLocationRelativeTo(null);  

또는 프레임을 사용하는 경우 프레임을

frame.setSize(220, 400);
frame.setLocationRelativeTo(null);  

명확히하기 위해 문서에서 :

구성 요소가 null이거나이 구성 요소와 관련된 GraphicsConfiguration이 null 인 경우 창은 화면 중앙에 배치됩니다.


답변

NetBeans IDE 7.2.1을 개발자 환경으로 사용하고 있으며 JForm 속성을 구성하는 옵션이 있습니다.

JForm 속성에서 ‘코드’탭으로 이동하여 ‘생성 센터’를 구성하십시오. 먼저 양식 크기 정책을 ‘크기 조정 코드 생성’으로 설정해야합니다.


답변

NetBeans IDE 7.3을 사용하고 있는데 이것이 JFrame을 중앙 집중화하는 방법입니다. JFrame 패널을 클릭하고 JFrame 속성 표시 줄로 이동 한 다음 코드 표시 줄을 클릭하고 센터 생성 확인란을 선택하십시오.