자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 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를 사용하고 있습니다.

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

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

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

 

감사합니다.

 

 

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 39570
공지 유용한 관련 사이트 관리자2 2014.03.20 79078
432 [xe8] 앱이 항상 켜져있으려면.. [1] 가을이다 2015.12.28 471
431 서브폼 Close시 메인폼 활성화문제 라운지 2015.09.16 472
430 listview Data 뿌려주거나 클릭 시 EvalError 발생. [4] file 엔달 2018.09.27 473
429 메세지 관련질문입니다. [1] 희망나라 2015.08.22 473
428 델파이 IBLite 안드로이드 실행시문제 [1] 스카이 2017.02.22 474
427 CTI 연동할때 모니터 하단에서 알림창 같이 떠오르게 하는 방법? 미스터리 2018.08.31 475
426 ListView 의 스크롤 방법을 알고싶습니다. [2] 거북이 2015.12.15 475
425 ListBox style에서 text를 추가했는데 livebinding으로 연결이 가능한가요?? [1] 손주영 2016.03.17 476
424 광고영상 재생 프로그램 강제 종료 오류 관련 문의 [2] file 소란코더 2017.11.24 479
423 XE8 리스트박스(데이터+이미지) 쓰레드 방법으로 구현하는 방법... file 김하나 2015.05.28 479
422 Android 에서 TMemo에 여러개의 줄이 입력되지 않습니다 [5] 지병철 2017.10.26 482
421 개발모드에서는 발생하지 않는데 구글플레이에서 다운받은 앱은 강제종료되는데 설정 잘못인지요? 스카이 2017.11.11 482
420 파이어몽키로 안드로이드 시스템상에서 터치 이벤트 발생이 가능한가요? [2] 유성 2021.03.24 483
419 [문의]프로그램 메모리릭 오류 체크 [1] 공수래 2021.03.25 484
418 APP STORE IOS....앱 아이콘을 Xcode의 자산 카탈로그에 추가해야합니다 문제 [1] 성후아빠 2020.07.07 485
417 linux console에서 webbrowser에러 100jk 2021.02.23 487
416 파이어몽키 소켓통신 - 질문수정 [2] hs 2019.12.17 491
415 스마트폰에서 폼 종료 방법을 알려주세요. [1] 거북이 2015.11.03 492
414 docking or Handle 문제 문의 [1] 마이밥 2017.11.03 495
413 폼을 생성할때 ItemIndex를 설정하면 combobox1change 이벤트발생. 오류인듯 -_- [2] 미스터리 2018.08.29 495