라디오 단추 두 개 (new Button(parent, SWT.RADIO)
)를 만들고 프로그래밍 방식으로 radioButton5.setSelection(true)
을 사용하여 선택을 설정하면 이전에 선택한 라디오 단추도 선택 상태로 유지됩니다. 선택을 취소하려면 같은 그룹의 다른 모든 라디오 버튼을 반복해야합니까 아니면 더 간단한 대안이 있습니까? 미리 감사드립니다.SWT : 프로그래밍 방식으로 라디오 단추 설정
7
A
답변
6
불행히도 모든 옵션을 반복해야합니다. UI가 처음 나타날 때 BN_CLICKED
이벤트가 발생합니다.
void selectRadio()
{
Control [] children = parent._getChildren();
for (int i=0; i<children.length; i++) {
Control child = children [i];
if (this != child) child.setRadioSelection (false);
}
setSelection (true);
}
그래서 본질적으로 그 자체가 모든 라디오 버튼 반복하고 자신의 상태를 전환에 따라 일식 :
Shell
또는
Group
또는 라디오 버튼의 어떤 컨테이너가 다음 메서드를 호출
SWT.NO_RADIO_GROUP
옵션으로 생성되지 않습니다 귀하의 경우.
라디오 버튼을 수동으로 선택할 때마다 BN_CLICKED
이벤트가 발생하고 자동 토글됩니다.
button.setSelection(boolean)
을 사용하면 BN_CLICKED
이벤트가 발생합니다. 따라서 라디오 버튼을 자동으로 전환 할 필요가 없습니다.
자세한 내용은 org.eclipse.swt.widgets.Button
클래스를 확인하십시오.
-2
자동으로 발생합니다. 어떻게 단추를 만들고 있니? 그들은 같은 부모에 있습니까? 부모가 NO_RADIO_GROUP 스타일을 사용하고 있습니까?
1
동일한 컴포지트의 라디오 단추는 그룹으로 작동합니다. 한 번에 하나의 라디오 버튼 만 선택됩니다.
Composite composite = new Composite(parent, SWT.NONE);
Button btnCopy = new Button(composite, SWT.RADIO);
btnCopy.setText("Copy Element");
btnCopy.setSelection(false);
Button btnMove = new Button(composite, SWT.RADIO);
btnMove.setText("Move Element");
관련 문제
- 1. 프로그래밍 방식으로 라디오 그룹 설정
- 2. SWT 테이블을 프로그래밍 방식으로 스크롤
- 3. 프로그래밍 방식으로 단추 이벤트를 호출
- 4. 프로그래밍 방식으로 웹보기를 만들고 이전보기로 돌아가는 단추
- 5. 프로그래밍 방식으로 코코아 OSX 창에서 단추 제거
- 6. 내가 프로그래밍 방식으로 라디오 버튼의 상태를 변경하려고했습니다
- 7. Scriptmanager 및 업데이트 패널을 프로그래밍 방식으로 설정
- 8. 목록보기의 라디오 단추
- 9. 라디오 단추 요청 구문보기에서
- 10. 라디오 단추 바인딩 문제
- 11. HTML 중첩 라디오 단추
- 12. InstallShield에서 프로그래밍 방식으로 INSTALLDIR 설정
- 13. Blackberry - 프로그래밍 방식으로 알람 설정?
- 14. 프로그래밍 방식으로 NSSplitView의 한면 설정
- 15. UIBarButtonItem의 위치 설정 프로그래밍 방식으로
- 16. 프로그래밍 방식으로 TableRow의 여백 설정
- 17. 프로그래밍 방식으로 NSTextField의 텍스트 설정
- 18. 프로그래밍 방식으로 위치 데이터 설정
- 19. 프로그래밍 방식으로 안드로이드 설정 스피커폰
- 20. MapActivity : 프로그래밍 방식으로 APIKey 설정
- 21. 프로그래밍 방식으로 FrameView의 크기 설정
- 22. 프로그래밍 방식으로 ICQ 상태 설정
- 23. 프로그래밍 방식으로 WPF 속성 설정
- 24. MOSS - 프로그래밍 방식으로 SpecialPermissions 설정
- 25. 프로그래밍 방식으로 uiimage의 visibilty를 설정
- 26. 프로그래밍 방식으로 자동 잠금 설정
- 27. UIPopOver보기의 제목 설정 프로그래밍 방식으로
- 28. SWT 툴팁 지연 설정
- 29. Microsoft 보고서 뷰어의 라디오 단추
- 30. JFace/SWT : InputDialog의 단추 레이블 변경
같은 부모에 있고 부모가 'NO_RADIO_GROUP'으로 생성되지 않은 경우에도 여전히 질문에 언급 된 동작을 나타냅니다. 적어도 윈도우 비스타에서는 이클립스 3.6과 동작이 비슷하다. 다른 OS 또는 이클립스 버전에서 작동하는 경우 ** SWT 버그 **. – Favonius