새로운 글
새로운 덧글

자유롭게 질의 및 응답을 할 수 있는 게시판이며 어느 누구도 답변을 달아야만 하는 의무는 없습니다. 
  • 제품설치/등록/제품 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 바쁜 와중에도 답변을 주시는 분들께 감사 댓글 필수
-----------------------------------------------------------------------------------------------
안녕하세요.

기존에 볼랜드IDE에서 TMS AdvStringGrid를 사용하다가

모바일용으로 마이그레이션 중에 있는데요.

 

베를린에서 FMX TStringGrid를 이용해 개발할 때 안드로이드 환경에서

rowcount가 100일 때 사용자가 스트링그리드 스크롤을 최하단으로 내립니다.

그 상태에서 사용자가 버튼클릭을 함으로써 프로그램에서 rowcount를 2로 만듭니다.

그러면

 

function TStyledGrid.CellRect(const ACol, ARow: Integer): TRect;
var
  I, X, Y: Integer;
  HiddenFound: Boolean;
begin
  if (ACol < 0) or (ACol > ColumnCount) then
    raise EArgumentOutOfRangeException.CreateResFmt(@SInvalidColumnIndex, [ACol]);
  if (ARow < 0) or (ARow > RowCount) then
    raise EArgumentOutOfRangeException.CreateResFmt(@SInvalidRowIndex, [ARow]);

.

.

.

end;

 

여기에 걸려서 Exception을 뱉어냅니다.

 

디버그 해보았을 때

ARow = 82, RowCount = 2 입니다.

82라는 값은 제가 추측하길 디바이스에서 스크롤을 최하단으로 내렸을 때에 보였던 최상단 Row값인 것 같습니다

왜냐하면 스크롤이 최하단일 때는 제 실제 디바이스 환경(Nexus5)에서 Row가 18개가 보였습니다.

스크롤을 중간으로 해놓고 하면 Exception 걸릴 때 ARow값이 줄어듭니다.

Exception이 되는 케이스는 스크롤 내렸을 때의 마지막 화면의 시작 Row값이

새로 그릴 rowcount := 값보다 크면 위와 같은 Exception조건에 걸립니다.

 

왜 이런 문제가 발생할까요?

저는 현재 FMX StringGrid Columns를 초기화하는데는 StringGrid1.RemoveObject를 사용하고 있고

Rows를 초기화하는데는 Rowcount를 사용하고 있습니다.

스트링그리드초기화하는데 어떤 방법을 써야할까요?

아에 인스턴스를 없애고 다시 생성하는 게 나을까요?

윈도우모드에서는 같은 행위를 시도했을 때 문제가 없었습니다.

 

감사합니다.

 

 

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2018.8~2018.11 관리자 2015.01.22 5972
공지 유용한 관련 사이트 관리자2 2014.03.20 43203
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 84867
» StringGrid 초기화 방법에 대해서 궁금합니다. [2] Vincent 2017.09.27 86
2043 restrequest, restclient를 이용한 fcm notification 보내기 [1] 슈퍼맨 2017.09.28 145
2042 델파이 6 소스 컴파일 및 빌드 오류 건 문의드립니다. [1] 다니엘 2017.09.14 96
2041 안녕하세요 컨트롤들을 일정하게 정렬시키려고 하는데요. [2] file Vincent 2017.09.25 53
2040 Delphi 7 에서 .NET DLL 참조 관련 [1] Joon 2017.09.25 81
2039 RAD Studio 평가판 기간이 만료되었습니다. [3] file 땅콩맨 2017.09.24 98
2038 XE10.1 FMX로 멀티다바이스에서 UI구현방법 [2] Vincent 2017.09.22 56
2037 Access Violation Error 관련 [1] Joon 2017.09.25 60
2036 안드로이드 MediaPlayer 에서 wav재생 [3] 가을이다 2017.09.23 315
2035 가상 키보드 크기가 정상적으로 넘어오지 않습니다. [1] file 쿠리 2017.09.25 81
2034 멀티디바이스 기본 MasterDetail 템플릿에서 데이터들은 어디서 가져오나요? [2] Vincent 2017.09.22 26
2033 답변이 없으셔서 다시 문의 합니다.(Rest 컴포넌트 관련) [3] 제트콜 2017.09.15 111
2032 델파이 사용중 문의 드립니다. 씨엠 2017.09.21 28
2031 실행 시 Down Run Away Error..가 발생합니다 [1] sm 2017.09.21 20
2030 반투명 판넬을 만들고 싶습니다. [1] 원우아빠 2017.09.20 63
2029 XE5 IOS 10.3 지원 문의 [1] 성후아빠 2017.09.19 50
2028 TJsonSerializer.Serializer 버그? 오류? 같은 경험이 있으신분 계실가요? [2] 가나당 2017.09.14 58
2027 Login 시 오류 메시지 조치 방법 문의드립니다. [1] 다니엘 2017.09.14 42
2026 지뢰찾기를 만드는중에 질문이 있어서 글올립니다. [1] file 땅콩맨 2017.09.15 55
2025 Dataset not in edit or insert mode 라는 에러.. [2] 이성재 2017.09.16 148



광고 모듈이 설치되어 있지 않아 실행을 중단합니다..