문제

편집기 구성 요소로 jformattedTextField가있는 사용자 정의 식탁보 (기본 셀러리터 확장)가있는 테이블을 얻었습니다.

이제 문제가 발생했습니다. 편집하는 동안 별도의 버튼을 누를 때. 버튼을 누르면 편집기는 "열려 있고 활성화"상태로 유지되는 동안 편집을 중지하여 버튼으로 인한 작업에 변경 사항을 사용할 수 있도록하기를 원합니다.

따라서 뚜렷한 버튼을 누르면 편집이 중지되는 방법. 나는 시도했다 setfocuslostbehavior (jformattedTextfield.commit)JFormattedTextField 그러나 그것은 효과가없는 것 같습니다.

누군가가 좋은 아이디어가 있기를 바랍니다 =)

도움이 되었습니까?

해결책

당신은 시도 할 수 있습니다

jtable.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE);

다른 팁

고마워 asalamon74, 그것은 아주 잘 작동합니다.

Sun Bug Database의 문제에 대한 논쟁이 있습니다. 버그 4724980 : jtable : 테이블이 초점을 잃을 때 편집 할 일을 제어하기 위해 API를 추가하십시오. (다른 버그 항목도 발견됩니다). TerminateEditonFocusLost는 수업의 Java 소스에서 볼 수있는 "Commit-Or-Accel"동작을 켭니다. JTable $ CellEditorRemover

그리고 네, API 등에 문서화되지 않은 것은 다소 이상합니다 ...

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top