728x90
반응형
질문 : Java Swing에서 set (Preferred | Maximum | Minimum) Size 메서드를 사용하지 않아야합니까?
다음 방법의 사용을 제안한 것에 대해 여러 번 비판을 받았습니다.
Swing
구성 요소에. 표시된 구성 요소 간의 비율을 정의하려는 경우 사용에 대한 대안이 없습니다. 나는 이것을 들었다 :
레이아웃을 사용하면 대답은 항상 동일합니다. 적합한 LayoutManager를 사용하세요.
웹을 조금 검색했지만 주제에 대한 포괄적 인 분석을 찾지 못했습니다. 그래서 다음과 같은 질문이 있습니다.
답변
- 이러한 방법의 사용을 완전히 피해야합니까?
- 예, 애플리케이션 코드입니다. - 방법은 이유가 있습니다. 그렇다면 언제 사용해야합니까? 어떤 맥락에서? 어떤 목적으로?
- 개인적으로 API 디자인 사고라고 생각합니다. 하위 크기에 대한 특별한 아이디어를 가진 복합 구성 요소에 의해 약간 강제됩니다. 사용자 정의 LayoutManager로 요구 사항을 구현해야했기 때문에 "약간". - 이러한 방법을 사용하면 정확히 어떤 부정적인 결과가 발생합니까?
- (화면 해상도가 다른 시스템간에 이식성을 추가하는 것만 생각할 수 있습니다.)일부 (불완전하고 불행히도 SwingLabs를 java.net으로 마이그레이션하여 링크가 끊어짐) 기술적 이유는 예를 들어 규칙 (hehe) 또는 내 답변에 대한 그의 의견에서 찾은 @bendicott 링크에 언급되어 있습니다. 사회적으로 코드를 유지하고 깨진 레이아웃을 추적해야하는 불행한 동료에게 수많은 작업을 제공합니다. - 어떤 LayoutManager도 원하는 모든 레이아웃 요구 사항을 정확히 충족시킬 수 있다고 생각하지 않습니다. 내 레이아웃의 모든 작은 변형에 대해 새로운 LayoutManager를 구현해야합니까?
- 예, "모든 레이아웃 요구 사항"에 대한 아주 좋은 근사치를 만족시킬만큼 강력한 LayoutManager가 있습니다. 큰 세 가지는 JGoodies FormLayout, MigLayout, DesignGridLayout입니다. 따라서 실제로는 단순한 고도로 전문화 된 환경을 제외하고는 LayoutManager를 거의 작성하지 않습니다. - 4에 대한 대답이 "예"이면 유지 관리가 어려워지는 LayoutManager 클래스가 확산되지 않을까요?
- (4에 대한 답은 "아니오"입니다.) - 구성 요소의 자식 간의 비율을 정의해야하는 상황 (예 : 자식 1은 공간의 10 %, 자식 2 40 %, 자식 3 50 %)을 정의해야하는 상황에서 사용자 지정 LayoutManager를 구현하지 않고도이를 달성 할 수 있습니까?
- Big-Three 중 누구라도 GridBag조차 할 수 없습니다 (정말 마스터하는 데 신경 쓰지 않고 너무 적은 전력으로 너무 많은 문제).
출처 : https://stackoverflow.com/questions/7229226/should-i-avoid-the-use-of-setpreferredmaximumminimumsize-methods-in-java-swi
728x90
반응형
'프로그래밍 언어 > JAVA' 카테고리의 다른 글
Java 쿼리 문자열 매개 변수의 URL 인코딩 (0) | 2021.12.19 |
---|---|
JavaScript 링크 "#" vs "javascript : void (0)" (0) | 2021.12.19 |
Java Class에서 canonical name, simple name, class name의 차이점 (0) | 2021.12.15 |
jQuery를 사용하여 JavaScript 개체에서 select 항목에 옵션을 추가하는 가장 좋은 방법 (0) | 2021.12.14 |
JavaScript를 사용하여 이미지를 Base64 문자열로 변환하는 방법 (0) | 2021.12.14 |