setLocation 또는 레이아웃을 사용합니까? Swing 구성 요소를 프레임에 쉽게 배치 할 수있는 방법에 대해 조언 해 줄 수 있습니까?Java에서 구성 요소를 배치하는 데 사용하기 쉬운 방법은 무엇입니까?
답변
Swing에서 절대 위치 지정을 위해 http://java.sun.com/docs/books/tutorial/uiswing/layout/none.html을 참조하십시오. 그러나 대부분이 문제를 피하고 적절한 레이아웃 관리자를 사용합니다. 이를 위해 엄청나게 강력한 레이아웃 관리자 인 MigLayout (코드에서 직접 레이아웃을 쉽게 지정) 또는 UI 디자이너 인 Mattise을 사용하여 GridBagLayout을 사용하고 .java 파일을 자동으로 삽입 지점으로 사용하는 것이 좋습니다. UI 이벤트 등에 응답하기위한 자체 코드
alt text http://i.d.com.com/i/dl/media/dlimage/10/58/06/105806_large.jpeg
MigLayout 예 : 다음 플랫폼에 따라 다양한 레이아웃 등을 처리 할 수있을만큼 유연하고있어 이후
JPanel p = new JPanel(new MigLayout("", "[right]"));
p.add(new JLabel("General"), "split, span, gaptop 10");
p.add(new JSeparator(), "growx, wrap, gaptop 10");
p.add(new JLabel("Company"), "gap 10");
p.add(new JTextField(""), "span, growx");
p.add(new JLabel("Contact"), "gap 10");
p.add(new JTextField(""), "span, growx, wrap");
p.add(new JLabel("Propeller"),"split, span, gaptop 10");
p.add(new JSeparator(), "growx, wrap, gaptop 10");
p.add(new JLabel("PTI/kW"), "gap 10");
p.add(new JTextField(10), "");
p.add(new JLabel("Power/kW"), "gap 10");
p.add(new JTextField(10), "wrap");
p.add(new JLabel("R/mm"), "gap 10");
p.add(new JTextField(10), "wrap");
p.add(new JLabel("D/mm"), "gap 10");
p.add(new JTextField(10));
레이아웃 관리자를 사용하여 컨테이너에 구성 요소를 배치하는 것이 좋습니다. 장점은 레이아웃 관리자가 컨테이너의 크기를 조정할 때 서로 옆에있는 구성 요소의 크기를 조정하거나 위치를 재 지정하는 기능을 제공한다는 것입니다.
모든 행동을 직접 프로그래밍하지 않아도됩니다.
은 확실히, 레이아웃 매니저를 사용하는 폰트 (버튼의 크기에 영향을 미치는) 크기. 후자는 일부 사용자가 작은 텍스트를 보는 데 문제가있어 액세스 가능한 응용 프로그램을 만들고 글꼴 크기에 전역 배율을 적용하려는 경우 중요합니다. 추가 보너스는 전체 윈도우 크기를 쉽게 조정할 수 있다는 것입니다.
그러나 GridBagLayout
은 피해야합니다. 강력하지만 속이기에는 많은 작업이 필요하므로 처음부터 자신의 전문가 레이아웃을 작성하는 것이 더 쉽습니다.
- 1. android에서 항목을 사용하여 목록보기에 구성 요소를 배치하는 방법은 무엇입니까?
- 2. XNA에 카메라를 배치하는 가장 쉬운 방법은 무엇입니까?
- 3. Java에서 테이블 내에 버튼을 배치하는 방법은 무엇입니까?
- 4. Silverlight 요소를 서로 가운데에 배치하는 방법은 무엇입니까?
- 5. WPF Grid 열에 요소를 배치하는 방법은 무엇입니까?
- 6. 이 html 요소를 배치하는 방법은 무엇입니까?
- 7. 다른 구성 요소를 dataGrid에 배치하는 방법
- 8. Java에서 'is'를 수행하는 가장 쉬운 방법은 무엇입니까?
- 9. MiGLayout을 사용하여 여러 구성 요소를 포함하는 행의 구성 요소를 중앙에 배치하는 방법
- 10. Java에서 웹 서비스 만 사용하기
- 11. Revit API PromptForFamilyInstancePlacement를 사용하여 상세 구성 요소를 배치하는 중
- 12. UIView를 배치하는 방법은 무엇입니까?
- 13. Java에서 배열 요소를 volatile로 선언하는 방법은 무엇입니까?
- 14. 가장 쉬운 방법은 java에서 항아리 포장을 풀다
- 15. html 5에서 div 요소를 캔버스 요소 위에 배치하는 방법은 무엇입니까?
- 16. 요소의 중심을 사용하여 BoxLayout에 요소를 가운데에 배치하는 방법은 무엇입니까?
- 17. 제목 (H1, H2 등) 태그 내에 요소를 배치하는 방법은 무엇입니까?
- 18. 두 개의 콘텐츠 크기 HTML 요소를 나란히 배치하는 방법은 무엇입니까?
- 19. 하나의 요소를 동일한 보이는 위치에 정확히 배치하는 방법은 무엇입니까?
- 20. 상대적으로 배치 된 요소를 jquery로 가운데에 배치하는 방법은 무엇입니까?
- 21. 실버 라이트로 이미지를 가운데에 배치하는 가장 쉬운 방법은?
- 22. listView에서 구성 요소를 가져 오는 방법은 무엇입니까?
- 23. Admin Generator에서 구성 요소를 사용하는 방법은 무엇입니까?
- 24. javascript에서 jsf 구성 요소를 추가하는 방법은 무엇입니까?
- 25. FluentNHibernate로 일반 구성 요소를 구성하는 방법은 무엇입니까?
- 26. 파일이 아닌 구성 요소를 관리하는 방법은 무엇입니까?
- 27. ExtJS 구성 요소를 인쇄하는 방법은 무엇입니까?
- 28. 로드시 RichFaces 구성 요소를 숨기는 방법은 무엇입니까?
- 29. 오른쪽 방향 JTabbedPane의 탭 아래에 구성 요소를 배치하는 방법
- 30. 사용 가능한 공간의 양에 따라 구성 요소를 다르게 배치하는 방법은 무엇입니까?
AWT, Swing, SWT 또는 다른 항목입니까? –
이것은 스윙입니다. – LockOn