JDialog의 필수 구성 요소 추가
Swing 기반 애플리케이션을 사용할 때는 UI 요소를 효율적으로 관리하는 것이 중요합니다. 이 기사에서는 JDialog에 구성 요소를 동적으로 추가하는 일반적인 과제에 대해 자세히 설명합니다.
시나리오
JDialog의 버튼이 JLabel 추가를 트리거하는 시나리오를 구상해 보세요. 및 JTextField, 다음에서 대화 상자를 변환합니다.
[버튼 전 대화 상자 이미지 클릭]
대상:
[버튼 클릭 후 대화상자 이미지]
문제
그러나 대화 상자의 새로운 구성 요소는 종종 성공하지 못합니다. 대화 상자는 변경되지 않은 상태로 유지되므로 개발자는 머리를 긁적입니다.
해결책
새로운 구성 요소를 대화 상자에 성공적으로 통합하려면 다음을 준수해야 합니다. 단계:
예
솔루션을 설명하려면 다음 코드를 고려하세요. 조각:
@Action public void addNewField() { Container contentPane = getContentPane(); JLabel label = new JLabel("welcome"); label.setBounds(10, 10, 100, 10); // Specify X & Y coordinates contentPane.add(label); contentPane.validate(); contentPane.repaint(); this.pack(); }
이러한 단계를 따르면 새 JLabel 추가를 반영하여 대화 상자가 동적으로 업데이트됩니다.
추가 고려 사항
NetBeans의 "Free Design" 레이아웃과 같은 특정 레이아웃 관리자로 작업할 때 새 레이아웃의 경계를 명시적으로 지정하는 것이 좋습니다. setBounds() 메서드를 사용하는 구성 요소입니다. 이렇게 하면 구성 요소가 대화 상자 내에서 원하는 위치에 표시됩니다.
위 내용은 Swing에서 JDialog에 구성 요소를 동적으로 추가하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!