2011-11-09 2 views
3

즐거운 하루 되세요. GWT Grid을 사용하는 테이블이있는 응용 프로그램을 만들고 있습니다. 이제 GWT Gridscrollbar이 있어야합니다. rowCount가 15보다 큰 경우 헤더가 스크롤 영역의 일부가 아닙니다.GWT 그리드로 스크롤 및 정렬 허용

내 문제는 다음과 같습니다

  1. 가 어떻게 헤더를 포함하지 않고 스크롤 테이블/그리드 내용을 활성화 할 수 있습니다?
  2. 내 표 머리글을 사용자가 특정 열을 정렬하기 위해 클릭 할 수있는 단추처럼 보이게하려면 어떻게해야합니까?

현재 코드는 헤더를 포함하여 rowCount> 15 일 때 스크롤 할 수 있습니다. 도와주세요. 미리 감사드립니다.

답변

0

나는이 게시물에 GWT에 깊이 파고되지 않습니다하지만 난 스크롤 부분을 수행하는 방법에 대한 몇 가지 힌트를 제공하기 위해 노력하겠습니다 스크롤.

테이블의 데이터가 테이블의 본문과 다른 태그로 묶여 있으면 문제가되지 않습니다. 행 개수가 때 overflow-y: scroll;를 설정 <tbody> 요소에 CSS 스타일을 추가해야합니다,

<table> 
    <thead> 
     <tr> 
      <th>ColumnHeader1</th> 
      <th>ColumnHeader2</th> 
     </tr> 
    </thead> 
    <tbody> 
     <tr> 
      <th>Data1</th> 
      <th>Data2</th> 
     </tr> 
    </tbody> 
</table> 

데이터 부분이 수직으로 스크롤 할 수 있도록하려면 다음 테이블의 구조는 다음과 유사한 경우에는 문제가되지 않습니다 또한 스크롤 바를 표시하는 다른 방법 (줄 바꿈 컨테이너)을 사용하여 높이를 설정하거나 높이를 제한해야합니다.

높이를 설정하려면 15 번째 행이 추가 된 직후에 <tbody>의 오프셋 높이를 고려하여 그 높이를 유지해야합니다. 다음과 같이 바뀔 수 있습니다.

tbodyElement.setHeight(tbodyElement.getOffsetHeight()); 

15 번째 행을 추가 한 직후에 수행해야합니다.

당신이 Widget의 어떤 종류에 열 머리글 이름을 감싸는 것을 들어

정렬. 예를 들어 HTML 또는 Label 일 수 있습니다. ClickHandler을 추가하고 CSS으로 커서를 올려 놓고 전체 셀과 커서를 채우기 위해 스타일을 지정하면됩니다.

결론

음이이 나의 빛 개요이었다. 코드를 보지 않고는 더 이상 진행하기가 어렵습니다.