2011-11-16 3 views
5

SlickGrid의 첫 번째 열을 고정시킬 수 있습니까? 헤더 행과 같이 가로 스크롤하는 동안 항상 볼 수 있도록하려면?첫 번째 열이 고정 된 SlickGrid가

도움 주셔서 감사합니다.

+0

그래서 소스 (버전 SlickGrid v2.0 알파)에서 아무것도 발견하지 못했습니다. 어쩌면 대답은 단지 "아니오"입니다. – user1027167

+1

Thee는 SlickGrid 작성자와 같은 질문에 대한 답변입니다. http://groups.google.com/group/slickgrid/browse_thread/thread/ba6a85279f3cfd5f – njr101

답변

5

나는 당신이 이벤트 .onViewportChanged()에서 다음 단계를 만들 수 있다고 생각 :

  1. .getColumns()로 열을 얻고 배열 변수 arrColumns에 저장됩니다.
  2. 그런 다음 첫 번째 열을 감지하십시오. 초기에 첫 번째 열을 가하고 변수 배열 arrData
  3. 정렬 arrColumns.getData()
  4. 스토어 데이터.
  5. 새로운 arrColumns의 순서로 .setColumns()
  6. 와 재 조립 arrData을 새로운 arrColumns의 열을 설정합니다.
  7. 전화 .resizeCanvas()
  8. 손가락을 교차하십시오. : D

미안하지만 미안하지만 원하는 방식으로이 동작을 수행 할 수있는 방법이나 옵션을 찾지 못했습니다.

글쎄, this의 의견을보세요. 완벽하지는 않지만 생각입니다. 메서드 scrollTo()가 public 일 때 나는 더 나은 것을 만들 것이다.

+0

고맙습니다. :)하지만 그것은별로 좋지 않다고 생각합니다. – user1027167

+0

몇 가지 테스트를 해보 시지 않겠습니까? – Galled

+0

그리드의 모든 데이터를 처리해야하기 때문에 그리 성능이 좋지 않습니다. 다음 문제 : 수평 스크롤링은 픽셀 단위로 수행되며 컬럼 단위로 수행되지는 않습니다. – user1027167

0

사용자의 요구 사항과 완전히 일치하지 않지만 옵션 개체에서 forceFitColumns을 true로 설정하면 가로 스크롤을 완전히 피할 수 있습니다.

이 동작은 매우 작은 화면의 사용자에게는 바람직하지 않을 수 있습니다.

+0

아니요. Excel에서 동결 창이 필요합니다. – Galled

+1

그러므로 내 답장의 첫 번째 구절은 ... – vemv

11

JLynch's fork으로 연결되는 또 다른 포럼 링크가 있습니다 (지금 찾을 수 없음). 그는 고정 된 행과 열에 대한 그의 패치가있는 1.4.3 태그와 2.0 헤드를 유지 관리합니다. 다음은 모두 frozen rows and columns 인 2.0 예제입니다. 핵심에 너무 많이 해킹 할 필요없이 희망이 당신이 원하는 것을

 ,topPanelHeight: 25 
     ,frozenColumn: 2 
     ,frozenRow: 5 

:

그 예에서

은, 저자는 몇 가지 추가 옵션 속성을 사용!

+0

그의 slickgrid.js는 일반과 다르며 새로운 slickgrid 버전으로 업데이트하기가 어렵습니다. 우리는 다른 방법을 찾아야한다. – Stiger

관련 문제