5 개의 열이있는 JFace TableViewer가 있습니다. 한 열에 긴 문자열이있을 수 있습니다. 이 테스트는 getText(Object element)
메서드를 호출하여 ColumnLabelProvider에서 설정됩니다.JFace TableViewer 열로 ColumnLabelProvider 텍스트를 자르고 확장합니다.
현재 텍스트는 문자열 끝에서 열 너비로 잘리고 끝에 "..."로 끝나며 사용자가 열 너비의 크기를 조정할 때 문자를 텍스트에 추가합니다.
이 동작을 사용하고 싶습니다. 그러나 텍스트 문자열의 중간에 "..."가 표시되어 사용자가 텍스트의 첫 번째 부분과 텍스트의 끝 부분을 볼 수 있습니다. 현재 열이 설정됩니다. 예를 들어
내 열은 현재 "this is a long piece of text larger than the column width
" "this is a long piece of text larger...
"
하고 싶습니다 그것이
"this is a long piece ... column width
" 를 표시해야 할뿐만 아니라,이 텍스트 때 중간에서 확장하도록 절단 열 폭이 축소되면 열 폭이 확장되고 다시 수축된다.
RCP E4 응용 프로그램에서 Jface Tableviewer를 사용하여이 작업을 수행하는 방법에 대한 의견이 있으십니까?
텍스트 문자열의 끝에있는 텍스트를 잘라내는 기존 메서드를 재정의 할 수 있으면 좋을 것입니다.
이것은 테이블이 사용하는 네이티브 컨트롤에 의해 이루어지며 OS에 따라 다릅니다 (예 : macOS에서는 발생하지 않음). 이로 인해 변경하기가 어렵습니다. 아마도 OwnerDrawLabelProvider를 사용하여이 작업을 수행 할 수 있습니다. –