자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

Tokyo 10.2.1에서 동적생성된 TFrame를 해제할 때 오류가 발생합니다.

베를린까지는 전혀 문제가 없었는데 Tokyo에서는 오류 또는 먹통이 되네요...

 

TFrame 생성/해재 테스트를 위해 간단히 만들어 봤습니다..

(원래는 프레임 생성/해제 관리 클래스를 만들어 사용하는데 하도 오류가 발생해서 원인 분석차 간단히 만들어 보았는데

역시 오류가 발생합니다.)

 

// 메인 유닛...

 

2017-10-14_15-48-01.png

 

unit Unit3;

........
  private

  public
    fr: TFrame1;

.....

procedure TForm3.btnFrameTestClick(Sender: TObject);

begin

   // 프레임 생성 버튼을 누르면 프레임을 동적생성한다....
    fr := TFrame1.Create(Self);
    fr.Parent := Self;
    fr.Align := TAlignLayout.Client;
end;

 

// 종료 버튼...

procedure TForm3.btnCloseClick(Sender: TObject);
begin
    Close;
end;

 

// 백버튼이 눌렸을 시 처리...

procedure TForm3.FormKeyUp(Sender: TObject; var Key: Word; var KeyChar: Char; Shift: TShiftState);
begin
    if Key = vkHardwareBack then
    begin
        Key := 0;

        if Assigned(fr) then
        begin

            // 여기에서는 전혀 문제가 발생하지 않는다..
            fr.DisposeOf;
            Exit;
        end;

        Close;
    end;
end;

end.

 

// 프레임 유닛 (Unit4)

2017-10-14_15-48-16.png

 

//  '해제' 버튼을 눌렀을 때 프레임을 해제한다.

procedure TFrame1.btnFrameFreeClick(Sender: TObject);
begin

    DisposeOf;

   // Form3.fr.DisposeOf;  //  메인폼에 있는 변수를 이용해 해제. 먹통....

   // FreeOnRelease;         // 해제 안됨...

   // Release;                  // 먹통...

    // 첫 번째로 버튼을 눌렀을 때는 해제가 되는데 두 번째부터 버튼을 누르면 오류 또는 먹통이 된다..

    // 오류 메시지: Project Project2.apk raised exception class Segmentation fault(11).

    // 여기에서 DisposeOf 대신 어떤 방법으로 프레임을 해제해야 하는지요?

 

   // 베를린에서는 Release; 를 해주면 아무 문제없이 잘 작동한다.

   // 도쿄에서는 Release가 deprecated가 돼서 사용할 수가 없고 사용해도 먹통이 된다...
end;
 

 

ToKyo에서 프레임을 사용하시는 분들은 프레임 위에서 '닫기' 버튼을 눌렀을 때 어떻게 프레임을 해제하는지

궁금합니다..

혼자 여러가지로 궁리를 해 보다가 이해가 안돼서 질문을 올려 봅니다..

 

감사합니다..

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 15766
공지 유용한 관련 사이트 관리자2 2014.03.20 54580
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97985
3159 델파이 도면편집 컴포넌트 문의 file 오바라미 2021.02.26 216
3158 질문] 코드사이트 중국어 표기 [1] 날개의꿈 2021.02.26 158
3157 linux console에서 webbrowser에러 100jk 2021.02.23 107
3156 Android SDK 관련 문의 [2] file 신우 2021.02.16 252
3155 [문의] C++builder 10.4 에서 Troubleshooting: Cannot Run on an Android Device 오류입니다. [1] file 구석 2021.01.31 215
3154 Xe5 DB 원견 접속 쿼리 실행 오류 문의 합니다. ㅠㅠ [2] 조은놈 2021.02.02 172
3153 ExportGridToXLSX 한글 & 특수 문자 사용시 오류 가나다 2021.02.10 417
3152 10.3 Rio 버젼에서 Code Insight 기능 오류현상 [1] sihwan 2018.12.14 390
3151 RAD Studio 10.3.2 Code Insight의 지속적인 문제 [2] 포비 2019.10.02 395
3150 Xe7 datasnap 안드로이드11 업그레이드후 실행이 안됨 [1] 천년바우 2021.02.08 203
3149 TStreamReader 한글깨짐 문제 [6] file IslamsWine 2020.02.29 2951
3148 초보적인 문의 드립니다. [4] BD 2021.02.04 196
3147 CodeSite 질문입니다. [2] BD 2021.01.27 211
3146 IOS 배포 에러 질문드립니다. [PAClient Error] Error: E0776 [1] syc 2021.01.28 357
3145 CodeSite 질문 입니다. [3] 늦바람 2015.03.27 650
3144 안드로이드11에서 실행이 멈추는 원인 해결 방법 부탁 [1] hms123 2021.01.29 312
3143 모바일에서 이미지 로딩시, 사진 방향이 바뀌는 이유 [3] delphiman 2021.01.26 343
3142 [문의] C++ Builder 10.x.x 로 개발된 프로그램 재배포는 어떻게합니까? [2] file inhi 2021.01.14 278
3141 FireDac 쿼리 실행시 가끔 발생되는 Access Violation을 못잡겠습니다.. [1] 육식육식 2021.01.20 244
3140 VCL어플리케이션 개발 중 GridPanel 질문드립니다! [2] file 육식육식 2020.04.10 514