답변
Javadocs에서 알 수 있듯이 JFrame.add는 후자를 호출합니다. AWT의 프레임과 Swings JFrame의 비 호환성을 해결하는 편리한 방법입니다. javadocs for JFrame에서
:
JFrame 클래스는 Frame와 다소 호환되지 않습니다. 다른 모든 JFC/Swing 최상위 컨테이너와 마찬가지로 JFrame에는 자식으로 JRootPane이 포함되어 있습니다. 루트 창에서 제공하는 콘텐츠 창은 규칙으로 JFrame에 표시된 모든 비 메뉴 구성 요소를 포함해야합니다. 이것은 AWT Frame의 경우와 다릅니다. 편의를 위해 변형을 추가하고 remove 및 setLayout이 필요하면 contentPane을 으로 전달하도록 재정의되었습니다.
`frame.add(child);`
을 그리고 아이는 contentPane에 추가됩니다 이것은 당신이 쓸 수 있다는 것을 의미합니다. 내용 창은 항상 null이 아닙니다. 을 null로 설정하면 JFrame이 예외를 throw합니다. 기본 콘텐츠 창 에는 BorderLayout 관리자가 설정되어 있습니다. JFrame의 LayoutManager 추가, 제거 및 설정에 대한 자세한 내용은 to RootPaneContainer를 참조하십시오.
add()
이있는 JFrame
상태의 JavaDoc을 다음 addImpl()
에 작업을 전달합니다 : 기본적으로
, 어린이의 contentPane 대신 프레임에 추가됩니다.
따라서 두 방법 모두 getContentPane().add(...)
을 사용하는 것이 더 명백한 사실 외에도 동일한 기본 동작을 갖습니다.
덧셈에 대한 기본 동작 (setRootPaneCheckingEnabled(false)
사용)을 변경할 수는 있지만 유의하고 싶지는 않습니다.
두 호출이 동일합니다. Java 5에서 그들은 내용 창으로 호출을 전달하도록 jframe.add
을 변경했습니다. Java 5 release notes에서
:.
마지막으로는 7 년 후, 우리는 jFrame.getContentPane()에 jFrame.add 상당했습니다 추가().
또한 javadocs을 참조하십시오.
질문이있는 경우에만 약 JFrame#add(JComponent)
v.s. JFrame.getContentPane()#add(JComponent)
다음 차이점은 없지만 f.e.를 변경하려는 경우. BackGround는 JFrame#setBackground(Color)
에서 메서드를 호출하거나 awt.Frame에서 중첩되거나 상속 된 메서드를 호출하면 달라집니다. JFrame.getContentPane()#setBackground(Color)
...
- 1. 자바에서 이차 구성 요소
- 2. 자바에서 JFrame은 중량 구성 요소 또는 경량 구성 요소입니까?
- 3. 9 패치를 사용해야하는 경우
- 4. POJO와 SLSB를 사용해야하는 경우
- 5. _mm_sfence _mm_lfence 및 _mm_mfence를 사용해야하는 경우
- 6. 논리적 및 물리적 구성 요소
- 7. 파이썬 디버거를 사용해야하는 경우
- 8. WCF/REST를 사용해야하는 경우
- 9. 임베디드 데이터베이스를 사용해야하는 경우
- 10. 스윙 구성 요소 및 직렬화
- 11. JPanel 이미지 및 구성 요소
- 12. 구성 요소 서비스 및 C#
- 13. 구성 요소 기반 구성
- 14. 구성 가능한 대 Spring과 AspectJ가있는 구성 요소
- 15. Erlang/OTP 응용 프로그램에서 gen_server를 사용해야하는 경우
- 16. Silverlight에 구성 요소 배치
- 17. Jira Agile에서 "Story"를 사용해야하는 경우와 "Improvement"를 사용해야하는 경우
- 18. C#/C++을 사용해야하는 경우
- 19. log4j - 테스트에서 PropertyConfigurator를 사용해야하는 경우?
- 20. 임베디드 프로세서에서 Simulink를 사용해야하는 경우
- 21. AppEngine - 부모 관계를 사용해야하는 경우?
- 22. ASP.NET - 구성 요소 라이센싱 및 면도기
- 23. 런타임시 시각적 구성 요소 제거 및 바꾸기
- 24. NSDateComponents 구성 요소 : fromDate 및 시간대
- 25. 가속도계 중력 구성 요소
- 26. Rhino 구성 요소 및 해당 컨테이너의 보안
- 27. HTML HTML 구성 요소 및 HTML_RENDER 이벤트
- 28. ClearCase : UCM vobs 및 구성 요소 통합
- 29. 타사 Joomla 구성 요소 및 모듈 확장
- 30. 윅스 및 공유, 버전 구성 요소
간단하고 명확합니다. 이것은 올바른 대답이어야합니다. – GusDeCooL