2011-10-10 2 views
1

gwt 2.4의 DataGrid에 문제가 있습니다. 나는 CellTable로 테이블을 만들었고 모든 것이 잘 작동했습니다. 하지만 고정 헤더가 필요하고 CellTable을 DataGrid로 교체했습니다. .css 파일에 문제가 있지만 해결 된 것보다.gwt 2.4 DataGrid - 열 너비 자동 설정?

이제 모든 열은 고정 폭을 가지며 테이블은 화면의 보이는 부분에 모든 행을 넣습니다.

이 일을 더 명확하게하기 위해, 신규 및 이전 스크린 샷입니다 :)

http://img832.imageshack.us/img832/5026/oldscreenshot.jpg

http://img834.imageshack.us/img834/1489/newscreenshot.jpg

누군가의 도움을 찾고 구 할 수 있지만, 고정 된 헤더.

답변

5

당신은 데이터 그리드의 각 열에 대해 고정 너비를 설정할 수 있습니다

dataGrid.setColumnWidth(sampleColumn, 40, Unit.PX); 

및 전체 데이터 그리드 폭을 확장 :와 TD에 콘텐츠를 감싸는

dataGrid.setWidth("100%"); // choose the most useful in your app 
dataGrid.setWidth("1400px"); 
0

필요 내부 div. overflow-x가 hidden으로 설정되었는지 확인하십시오.

2

옳은 대답은 무엇인지 모르겠지만 이전 대응자가 그 질문을 이해했다고 생각하지 않습니다. 기본적으로 dataGrid는 "고정"대신 "table-layout : auto"를 사용합니다. 이것은 cellTable의 기능입니다. 표의 열은 콘텐츠를 기준으로 자동 크기 조정됩니다. 이것은 내용 표에서는 쉽지만 header-freeze를 얻으려면 dataGrid가 헤더에 별도의 div/table을 사용하고 있습니다. 따라서 헤더 테이블의 열은 데이터 테이블을 기반으로 명시 적으로 크기가 지정되어야합니다. 또한 테이블이 변경 될 때마다 (브라우저의 크기가 조절되는 등) 크기를 조정해야합니다. dataGrid에 크기 조정 가능한 열을 추가 할 계획이므로 곧이 동일한 과제를 수행 할 것입니다. 누군가이 스레드를 여전히 추적하고 있다면 더 명확한 것이있을 때 업데이트 할 것입니다 ...