2011-05-05 5 views
0

나는 6 개의 텍스트 필드와 라벨을 포함하는 스윙 UI를 가지고있다. 이제 저는이 둘을 경계로하고 싶습니다.자바 스윙 텍스트 필드와 버튼의 테두리

제목이있는 테두리에 관한 자료를 읽었지만 단일 요소 만 생각합니다. 제발 제안 해주세요.

답변

3

당신이 국경을 제목하려면

JPanel pane = new JPanel(); 
pane.setBorder(BorderFactory.createLineBorder(Color.black)); 

는 당신이를 사용할 수 있습니다 :

하면 다음 사용할 수 있습니다 JPanel을 위해 국경을 부여하려면 제목이 표시된 JPanel을 만든 다음 원하는 많은 구성 요소를 넣을 수 있습니다. 원하는 콘텐츠 관리자를 사용하는 JPanel에서

예 : 편집 답 :

JPanel myPanel = new JPanel(); 
myPanel.setBorder(new TitledBorder(null, "My Title", TitledBorder.LEADING, TitledBorder.TOP, null, null)); 

myPanel.setLayout(new GridLayout(1, 0, 0, 0)); 

JButton button = new JButton("New button"); 
myPanel.add(button); 

JLabel label = new JLabel("New label"); 
myPanel.add(label); 
+0

그냥 TitledBorder의의 모든 매개 변수를 명확히 : –

+0

공공 TitledBorder의 (테두리 테두리, 문자열 제목, INT의 titleJustification, INT의 titlePosition, 글꼴 titlefont 나, 컬러 titleColor) –

+1

당신의 코드를 확인하십시오, 나는 당신의 오타가 있다고 생각 몇가지 종류. myPanel을 패널 또는 다른 방법으로 변경해야합니다. :) – Boro

3

마지막 두 구성 요소를 JPanel에 추가 한 다음이 패널을 기본 프레임에 추가 할 수 있습니다. 이제 JPanel에 경계를 부여 할 수 있으며 내부에는 약 2 개의 구성 요소가 있습니다.

pane.setBorder(BorderFactory.createTitledBorder(BorderFactory 
      .createMatteBorder(5, 5, 5, 5, Color.blue), "Title", 
      TitledBorder.LEFT, TitledBorder.TOP)); 

참조 : http://download.oracle.com/javase/tutorial/uiswing/components/border.html

+0

+1하지만 그는라는 제목의 경계를 원하는 것 때문에, 어쩌면 당신이 그것을 사용하는 변경해야는' – MByD

+0

@MByD을 BorderFactory.createTitledBorder'. –

+0

이제 우리는 같은 직책을 맡았습니다. 아마이 upvote를 제거해야합니까? ;) – MByD