Java Swing에 동등한 "그룹 상자"가 있습니까?
Java / Swing에서 GUI 애플리케이션을 빌드하려고합니다. 저는 주로 VB와 같은 도구를 사용하여 Windows 측에서 GUI를 "페인팅"하는 데 익숙합니다 (또는 더 정확하게 말하자면 Gupta SQLWindows ... 얼마나 많은 사람들이 그것이 무엇인지 알고 있는지 궁금합니다 ;-)).
스윙에서 그룹 박스에 해당하는 것을 찾을 수 없습니다 ...
그룹 상자를 사용하면 몇 가지 관련 위젯 주위에 사각형 상자 (일반적으로 제목 포함)가 있습니다. 한 가지 예는 몇 개의 라디오 버튼 주위에있는 그룹 상자입니다 (예 : "남성"및 "여성"라디오 버튼이있는 "Sex"라는 제목의 그룹 상자).
저는 약간의 검색을했습니다. 제가 찾은 유일한 방법은 하위 창을 추가하고 하위 창에 테두리를 설정 한 다음 "그룹"에있는 모든 위젯을 하위 창에 추가하는 것입니다. 더 우아한 방법이 있습니까?
JPanel을 만들고 여기에 라디오 버튼을 추가합니다. JPanel의 레이아웃을 적절한 것으로 설정하는 것을 잊지 마십시오.
그런 다음 전화 panel.setBorder(BorderFactory.createTitledBorder(name));
다른 사람들은 이미 JPanel에 대해 칭찬하고 TitledBorder를 사용하고 있습니다.
그러나 Swing LayoutManager로 플레이 할 때 다른 JPanel의 구성 요소가 올바르게 정렬되지 않는 것이 성가신 일이 될 수 있습니다 (각 패널에는 자체 LayoutManager가 있음).
이러한 이유로 Swing GUI에서 TitledBorders를 사용하지 않고 JLabel과 수평 JSeparator에 의해 JPanel의 구성 요소 그룹을 분리하는 것이 좋습니다 (자세한 내용은 웹에서 "JGoodies"를 확인하십시오).
Ref. " 스윙 응급 처치 "
그룹 상자는 '논리적으로 그룹화 된 위젯'의 집합입니다. 이것은 스윙 세계에서 JPanel
.
위젯을 JPanel
.
테두리 유형을 'Titled Border'로 설정하고 VB6 '프레임'의 이름과 동일한 제목을 지정합니다.
짜잔. 그룹 박스가 있습니다.
다음은 라디오 버튼을 가져온 이후의 JRadioButton javadocs의 인용문입니다.
라디오 버튼의 구현-선택하거나 선택 취소 할 수 있으며 사용자에게 상태를 표시하는 항목입니다. ButtonGroup 객체와 함께 사용하여 한 번에 하나의 버튼 만 선택할 수있는 버튼 그룹을 만듭니다. (ButtonGroup 객체를 만들고 add 메서드를 사용하여 그룹에 JRadioButton 객체를 포함합니다.)
참고 : ButtonGroup 객체는 물리적 그룹이 아니라 논리적 그룹입니다. 버튼 패널을 만들려면 여전히 JPanel 또는 유사한 컨테이너 객체를 만들고 테두리를 추가하여 주변 구성 요소에서 설정해야합니다.
적어도 표준 스윙 위젯에서는 AFAIK가 아닙니다.
VB에는 기본적으로 패널 + 테두리 인 그룹 위젯이 있습니다.
Swing에는 컨테이너 위젯 인 JPanel이 있으며 필요한 경우에만 테두리 개체를 만들고 설정합니다. 사용하지 않는 것 (예 : 테두리)에 대해 비용을 지불하지 않기 때문에 더 우아한 방식으로 주장 할 수 있습니다.
David Koelle이 자바 코드를 통한 경계 설정에 대해 언급했듯이 디자이너 모드에서도 비슷한 결과를 얻을 수 있습니다.
나는 OP가 의미하는 바를 설명하는 Uri의 의견을 기반으로 응답하고 있습니다 Group Box
.
Uri : 그는 라디오 버튼과 같은 여러 위젯 주위에 사각형이있는 많은 대화 상자에서 볼 수있는 컨트롤 그룹을 의미한다고 생각합니다.
내가 아는 한 모든 사람 JComponent
이 자체적으로 테두리를 설정할 수 있으므로 두 번째 패널이 필요하지 않습니다.
참고 URL : https://stackoverflow.com/questions/431654/is-there-a-group-box-equivalent-in-java-swing
'program story' 카테고리의 다른 글
D3 4.0 rangeRoundBands 동등? (0) | 2020.12.11 |
---|---|
TabLayout 탭 텍스트가 표시되지 않음 (0) | 2020.12.11 |
키 저장소에서 개인 키를 나열 / 내보내려면 어떻게합니까? (0) | 2020.12.10 |
Android의 TextView에 이미지를 표시하는 방법은 무엇입니까? (0) | 2020.12.10 |
복사 할 때 Vim에서 줄 번호를 지우는 방법은 무엇입니까? (0) | 2020.12.10 |