JFrame은 여러 개의 창으로 구성되어 있습니다. 창은 무엇이며 왜 Jframe은 창으로 만들어 졌습니까? JPanel이있는 이유는 JFrame이 JPanel과 정확히 같지만 메뉴 막대와 닫기 버튼이있는 것 같아서 JPanel의 필요성은 무엇입니까? 아무도 나에게 3 가지 구성 요소의 정의와 사용법을 명확하게 설명 할 수 있습니까?스윙에서 프레임, 창 또는 패널의 용도는 무엇입니까?
8
A
답변
15
JFrame과 같은 최상위 컨테이너가 있습니다. 이것들은 GUI가 구축되는 메인 윈도우의 역할을 할 수 있습니다.
중간 수준의 컨테이너가 있습니다. 이들은 다른 용기에 넣어 져야하며, 그들은 스스로 존재할 수 없습니다. 구성 요소를 구성하거나 기능을 추가하는 데 도움이됩니다. JPanel은 다른 구성 요소를 구성하는 데 도움이되는 매우 간단한 컨테이너입니다. JSplitPane은 가변적 인 두 개의 창이있는 기능을 추가하는 반면
복잡한 GUI가있는 경우 JPanels를 사용하여 GUI의 다양한 영역을 구성한 다음 각 패널을 JFrame에 추가 할 수 있습니다.
Java에서 Swing API는 Composite Design Pattern을 사용합니다. 즉, 다른 오브젝트에서 매우 복잡한 오브젝트를 작성하고 단순 오브젝트와 동일한 방식으로 복합 오브젝트를 처리 할 수 있습니다. 따라서 JPanel을 JPanel에 넣을 수 있으며 JPanel처럼 동작합니다.
태클 상자 (또는 재봉 키트)처럼 생각하십시오. 그것은 큰 컨테이너로 만들어진다. 그러나이 작은 컨테이너에 많은 작은 물건을 넣고 나중에 관리하기 어렵게 만드는 대신 작은 상자를 큰 상자 안에 넣을 수 있습니다. 그런 다음 구석과 싱커 등이 구획에 들어갑니다. 관리가 더 쉽습니다. 큰 상자는 JFrame이고 구획은 JPanels입니다.
관련 문제
- 1. Joomla의 용도는 무엇입니까?
- 2. SSH 프로토콜 채널 데이터 창 크기의 용도는 무엇입니까?
- 3. 자바 스윙에서 프레임, 윈도우 및 컴포넌트 간의 통신
- 4. HtmlAgilityPack MixedCodeDocument의 용도는 무엇입니까?
- 5. 패널의 다른 WPF 창 안에 WPF (xaml) 창을로드하려면 어떻게해야합니까?
- 6. 다음 함수의 용도는 무엇입니까?
- 7. System.Transactions의 실용적인 용도는 무엇입니까?
- 8. ASP.NET의 MultiView 컨트롤에 적합한 용도는 무엇입니까?
- 9. 스윙에서 동적 창을 만드는 방법은 무엇입니까?
- 10. HUD 패널의 프레임 및 제목 영역을 사용자 정의하는 방법
- 11. Java 스윙에서 JLabel 또는 ImageIcon을 회전하십시오.
- 12. 스윙에서 콤보 박스 바인딩하기
- 13. SO_REUSEADDR의 용도는 무엇입니까?
- 14. raisePropertyChanged 이벤트의 용도는 무엇입니까?
- 15. 인터페이스에서 속성의 용도는 무엇입니까?
- 16. 이 입력란의 용도는 무엇입니까?
- 17. _fread_nolock, _fseek_nolock의 용도는 무엇입니까?
- 18. 크로스 가입의 용도는 무엇입니까?
- 19. $$ jQuery에서이 용도는 무엇입니까?
- 20. 원자 방법의 용도는 무엇입니까?
- 21. Ackermann 함수의 용도는 무엇입니까?
- 22. 투명의 용도는 무엇입니까?
- 23. Silverlight.js 파일의 용도는 무엇입니까?
- 24. JavaFX 스크립트의 용도는 무엇입니까?
- 25. 코드의 용도는 무엇입니까?
- 26. TelephoneNumberUtil 클래스의 용도는 무엇입니까?
- 27. 9patch PNG의 용도는 무엇입니까?
- 28. MarshalByRefObject의 주요 용도는 무엇입니까?
- 29. jbossall-client.jar의 용도는 무엇입니까?
- 30. aligned_storage의 기본 용도는 무엇입니까?
나는 그것을 얻는다. 그러나 나는 아직도 또 다른 질문을 가지고있다. 저의 책에는 JFrame이라는 그림이 여러 칸으로 구성되어 있습니다 : 루트 패널, 계층화 된 창, 내용 창 및 유리 창 모두에 대한 필요성은 무엇입니까? 패널은 == 패널입니다. – Ahmed
프레임은 많은 상황을 처리해야하는 매우 복잡한 개체입니다. 그들은 여러 플랫폼이 비슷하게 행동해야한다고 말합니다. 이를 달성하기 위해서는 다양한 일들에 대한 책임을 그들 자신의 구성 요소로 나누는 것이 필요합니다. 이 페이지 : http://download.oracle.com/javase/7/docs/api/javax/swing/JRootPane.html 필자가 언급 한 창 중 일부의 목적을 이해하도록 도와줍니다. –