Kori 7월 12일, 2022에 포스트됨 공유하기 7월 12일, 2022에 포스트됨 전환 전: MVCL Grid (델파이 6) 전환 후: TMS TAdvStringGrid (델파이 11.1) 그림. 데브기어의 컴포넌트 변환툴(베타)을 사용하여 MVCL Grid (델파이 6)를 TMS Grid (델파이 11.1)로 자동 전환했다. 결과 화면(폼)이 동일하다. 이 글의 목적: MVCL Grid를 TMS의 TAdvStringGrid로 변환할 수 있도록 돕는다. 이 글의 내용: 변환툴을 사용하여 자동전환하는 과정을 비디오로 데모 데브기어의 컴포넌트 변환툴을 "무료로" 받는 방법 데브기어로 연락 (Github에는 향후 오픈 예정) 데브기어는 이 변환툴에서 자동변환하는 대상을 이 컴포넌트 뿐만 아니라 고객의 요구가 많은 써드-파티(3rd Party) 컴포넌트로 늘려가고 있습니다. 원하는 컴포넌트가 있으면 여기에 등록하세요. (변환툴을 제공하거나, 최적의 해법을 제공합니다) 배경 목표: VCL 애플리케이션을 델파이 6 버전에서 델파이 11.1 버전으로 업그레이드하기 당면과제: 델파이 6 버전에서 사용한 써드-파티 컴포넌트 전환하기 (대상: MVCL Grid) 이슈: 이 컴포넌트는 현재 단종된 제품이고 사용자는 이 컴포넌트의 소스코드를 가지고 있지 않음 해결 방향: 이 경우에는 아예 다른 컴포넌트로 대체하는 것이 권장 사항임 (자세히 보기). 이에 따라 사용자가 선정한 TMS의 TAdvStringGrid로 변환하기로 함 MVCL Grid 와 TMS Grid 의 속성 및 사용 방법의 주요 차이점 (지속 업데이트 예정) MVCL Grid TMS의 TAdvStringGrid 컬럼 헤더 설정 폼 디자이너의 오브젝트 인스펙터 창에서 설정 ColumnHeaders 프로퍼티에 들어가는 TStringList에 설정 컬럼 너비(width) 폼 디자이너의 오브젝트 인스펙터 창에서 설정 소스 코드에서 설정: tmsGridName.ColWidths[c] := 100; 컬럼 보이기/숨기기 Visible 프로퍼티 사용 Visible 프로퍼티가 없음. 아래와 같이 소스 코드에서 메소드를 사용 tmsGridName.HideColumn(ci); tmsGridName.UnhideColumn(ci); 컬럼과 로우의 인덱스 컬럼의 헤더와 로우의 헤더는 해당없음 데이터 셀 중 첫번째 셀의 인덱스는 [0,0]이다. 컬럼의 헤더와 로우의 헤더도 해당됨 데이터 셀 중 첫번째 셀의 인덱스는 [1,1]이다. 즉, TmsGrid 셀의 컬럼 인덱스와 로우 인덱스는 MVCL 셀의 컬럼 인덱스와 로우 인덱스에 각각 +1을 한 값이다. 데이터 값 할당 mGrid.Cell[c,r].AsString := "문자열" tmsGridName.Cell[c,r] := "문자열" 색상 mGrid.Column[c].Color := color tmsGridName.Colors[c,r] := color tmsGridName.RowColor[r] := color MVCL Grid를 TMS의 TAdvStringGrid로 변환 이 데모에서 변환툴은 MVCL Grid 컴포넌트에 반영되어 있는 속성을 읽고, 새 TAdvStringGrid에 반영할 수 있는 코드를 자동으로 생성한다. 인용하기 이 댓글 링크 다른 사이트에 공유하기 더 많은 공유 선택 사항
Recommended Posts
이 토의에 참여하세요
지금 바로 의견을 남길 수 있습니다. 그리고 나서 가입해도 됩니다. 이미 회원이라면, 지금 로그인하고 본인 계정으로 의견을 남기세요.