2010-01-11 6 views
1

JFrame에서 구성 요소 (구체적으로 JLabel)가 배치되는 위치를 어떻게 지정합니까? JFrame 객체를 만들고 JLabel과 JList를 프레임에 추가했지만 두 객체가 서로 위에 놓여 있습니다. 나는jframe 구성 요소 레이아웃

label.setBounds(10,10,10,10);
list.setBounds(20,20,100,100);

label.setLocation(10,10);
list.setLocation(10, 50);

어느 작업하는 이들의

를 사용하여 시도했다. 어떤 도움을 주셔서 감사합니다! 감사.

+0

'JFrame','JLabel' 및'JList'를 만드는 코드를 제공 할 수 있습니까? –

답변

2

을 시도, 레이아웃 매니저는 구성 요소가 배치 될 방법을 결정하는 데 사용됩니다. 당신은 확실히 당신의 구성 요소를 넣어 좌표를 사용하려면 http://java.sun.com/docs/books/tutorial/uiswing/layout/using.html

, 당신은 시도 할 수 있습니다 : 당신은 여기 레이아웃 매니저에 대한 자세한 정보를 찾을 수 있습니다

JFrame frame = new JFrame(); 
frame.setLayout(null); 

그렇지 않으면, 자바를위한 아주 좋은 GUI 편집기 넷빈즈 인 기본적으로 GroupLayout을 사용하고 있습니다.

+0

레이아웃 관리자를 null로 설정하는 것은 구성 요소를 배치 할 때 절대 위치 지정을 사용하는 기본 방법입니다. 그러나 IMO, NetBeans 용 GUI 편집기는 정말 고통스럽고 사용하지 않는 것이 더 쉽습니다. – ChadNC

+0

NetBeans UI 편집기는 훌륭하고 현재 무료로 사용할 수있는 최고의 편집기 중 하나입니다. 다른 LayoutManager가 어떻게 작동 하는지를 알기는 어려울 수 있지만 결국에는 그만한 가치가 있습니다. – willcodejavaforfood

1

Layout Managers이 작업을 수행합니다. 기본 레이아웃 BorderLayout

, 자바에서는

setLayout(new BorderLayout()); 
getContentPane().add(yourLabel, BorderLayout.NORTH); 
getContentPane().add(yourList, BorderLayout.CENTER); 
관련 문제