2013-04-07 1 views
2

pyqt (및 qt 일반적으로)의 tableview 또는 tablewidget에서 줄 바꿈이없는 열 셀의 크기를 조정하면 셀 값의 오른쪽이 셀 값이 왼쪽 또는 오른쪽으로 정렬되는지 여부에 관계없이 클리핑되고 (줄임표로 대체됩니다.)pyqt tableview 크기를 조정할 때 열 셀의 왼쪽면을 자르는 방법

효과는 다음과 같다 :

The long and winding road. => The long and windi... 

대신 셀 값의 좌측 패스 동안 셀의 크기를 조절하기 위해 테이블을 강제 할 수 있는가? 다음과 같이

내가 원하는 효과는 다음과 같습니다

The long and winding road. => ...ng and winding road. 

나는이 원하는 내가 바로 한 줄의 텍스트를 정렬 한 다음 셀의 크기를 조정하면, 난 항상 맨 끝에 오는 것을보고 싶어 너무 줄의.

도움을 주시면 감사하겠습니다.

답변

2

setTextElideMode을 사용하여 "..."이있는 위치를 설정할 수 있습니다. 귀하의 경우 (C++ 사용) :

ui->tableWidget->setTextElideMode(Qt::ElideLeft); 

elide 모드는 모든 열에 영향을줍니다.

+0

거의 완벽합니다. 그러나 개별 열에 동일한 엘라 드 모드 효과를 적용 할 수있는 방법이 있습니까? – Lozzer

+0

나는 그것이 쉽게 가능하다고 생각하지 않는다. 텍스트 그림을 그리는 [delegate] (http://qt-project.org/doc/qt-4.8/model-view-programming.html#delegate-classes)를 만들어야 할 것입니다. –

+0

감사합니다. 실제로 이미 드로잉을 위임하고 있습니다. 그러나 저는 엘리트 효과를 얻으려고 애 쓰고 있습니다. 그것은 세포의 너비를 계산하고 모든 줄에서 텍스트를 자르는 것이 포함됩니까? 이것은 처리 시간이 비싸 보입니다. – Lozzer

관련 문제