2013-04-02 2 views
1

예를 들어 JLabel이 있고 setLocation() 메서드를 호출하면 아무 일도 일어나지 않습니다. 다른 모든 JComponent과 동일합니다. 위치를 어떻게 지정할 수 있습니까? 내가 원하는 곳 어디에서나이 번호를 옮길 수 있다면 좋을 것입니다.Java JTextArea, JLabel 및 기타 구성 요소 : 위치 설정 방법

+2

에 대한 도움말 this tutorial를 살펴 보자 때 자신을 레이아웃 계산을 수행, 새로운 구성 요소의 트랙마다 유지해야합니다 필요한,하지 않습니다. 대신 레이아웃 관리자를 사용하는 법을 배우고 다른 레이아웃 관리자와 함께 복합 구성 요소를 사용하여 동일한 효과를 얻는 것을 두려워하지 마십시오. 레이아웃 관리자는 레이아웃을 계산할 때 많은 것을 고려해야합니다. 복제해야 할 일이 많지 않을 것입니다. - IMHO – MadProgrammer

+0

@MadProgrammer * "절대적으로 필요하지 않는 한,하지 마십시오." 아직 구성 요소 레이아웃 코드를 (아마도 사용자 정의) 레이아웃에 넣지 말아야한다는 상황을보아야합니다. 그래서 절대적으로 필요한 것은 ***입니다. –

답변

1

나는이 패널이나 프레임의 LayoutManager이 (는) 라벨 위치를 설정하고 있다고 생각합니다.

당신이 null에 레이아웃을 설정해야 할 일은 (이 그렇게 프레임이 자체적으로 구성 요소를 레이아웃하려고하지 않는 것) :

public GUI() 
{ 
    setLayout(null); 
} 

나는 그러나이 해결 방법을 용납하지 않는다 LayoutManager은 구성 요소를 배치해야하는 곳을 매핑하는 데 매우 유용합니다. LayoutManagernull 때 절대적으로있는 경우가 아니면, 당신은 창을 이동하는 등, 축소 LayoutManager

+0

동일한 작업을 수행 할 자체 레이아웃을 만들 수 있습니까? – Justin

+1

@gangqinlaohu 예. – MadProgrammer

+0

왜 다운 투표입니까? – syb0rg