JCheckBox
의 텍스트를 클릭하면 체크 상태가 변경되지 않으므로 JToggleButton
에서 상속되므로 확인란을 클릭해도 텍스트가 클릭되는 것과 같은 효과가 있습니다. 하지만 이제 다음과 같이 작동하는 이 필요합니다.JCheckBox는
- 확인란을 클릭합니다. 확인란을 선택 또는 선택 취소합니다.
- 텍스트 클릭 : 확인란을 업데이트하지 않지만
ActionEvent
을 내 보냅니다.
은 현재 내가 JCheckBox
에 processMouseEvent()
기능을 무시하여 추한 해킹을 사용하고, 마우스가 CheckBox
의 왼쪽 부분을 클릭하는 경우에만 super
에 전파. 코드는 다음과 같습니다.
public class MyCheckBox extends JCheckBox {
@Override
protected void processMouseEvent(MouseEvent e) {
if (e.getX() < this.getHeight()) {
super.processMouseEvent(e);
} else {
this.fireActionPerformed(new ActionEvent(this, 0, "click on text"))
}
}
}
더 간단한 해결책이 있습니까?
* "현재 못생긴 해킹을 사용하고 있습니다."* 사용성면에서보기 흉한 사용자 인터페이스를 구현하려고 시도하고 있습니다. 따라서이 작업을하지 않는 것이 좋습니다! –
텍스트를 클릭 할 수 있음을 사용자에게 알리는 툴팁이 있습니까? – trashgod