자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Delphi 델파이 중복 폼 방지 질문드립니다.
2019.05.23 10:51
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
IF NOT Assigned(Form5) THEN
begin
Form5 := TForm5.Create(self);
exit;
end;
이렇게 했습니다. Form5는 자식폼이고 부모폼도 있습니다.
Form5 실행 후 다시 Form5 실행하려고하면 실행이 안되서 해결했다 했는데
Form5를 닫고 다시 Form5을 실행하면 뜨지가 않습니다. exe 실행시 Form5가 한번만 실행이 되는게 아니라 하나만 실행이 되게 하고싶습니다. 어떤식으로 해야하나요..?
번호 제목 글쓴이 날짜 조회 수
공지
[프로그래밍 강의] 2021.6~2021.12
관리자 2015.01.22 15634
공지
유용한 관련 사이트
관리자2 2014.03.20 54464
공지
본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다.
관리자 2012.01.10 97828
11
html5 buider 문의 드립니다.
씩 2012.12.14 2
10
HTML5 빌더에 대해 문의드립니다.
cyner 2012.09.20 4
9
radphp xe2 에서 인쇄을 하는 방법 문의 합니다?
자이소 2014.05.10 1772
8
html5 builder에서 html문서 만들때 브라우저에서 한글이 깨집니다.
종달새 2014.02.28 3098
7
RadPHP 평가판에서 정품으로 바꾸려는데 어떻게 하나요?
관리자 2012.07.20 7050
6
radphp를 공부해 보려고 하는데요..
[1] 태랑 2012.07.12 7433
5
RadPHP와 관련해서 스터디 할만한 자료는 없나요?
관리자 2012.04.10 8149
4
그리드 연결
[1] 모든길 2012.04.13 8301
3
글씨 크기
[1] 모든길 2012.05.12 9251
2
한글
[3] 모든길 2012.04.12 9254
1
RAD PHP 개발과정 및 배포방법
[2] cdrd 2012.04.23 9615
Delphi 델파이 중복 폼 방지 질문드립니다.
2019.05.23 10:51
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
IF NOT Assigned(Form5) THEN
begin
Form5 := TForm5.Create(self);
exit;
end;
이렇게 했습니다. Form5는 자식폼이고 부모폼도 있습니다.
Form5 실행 후 다시 Form5 실행하려고하면 실행이 안되서 해결했다 했는데
Form5를 닫고 다시 Form5을 실행하면 뜨지가 않습니다. exe 실행시 Form5가 한번만 실행이 되는게 아니라 하나만 실행이 되게 하고싶습니다. 어떤식으로 해야하나요..?
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | [프로그래밍 강의] 2021.6~2021.12 | 관리자 | 2015.01.22 | 15634 |
공지 | 유용한 관련 사이트 | 관리자2 | 2014.03.20 | 54464 |
공지 | 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. | 관리자 | 2012.01.10 | 97828 |
11 | html5 buider 문의 드립니다. | 씩 | 2012.12.14 | 2 |
10 | HTML5 빌더에 대해 문의드립니다. | cyner | 2012.09.20 | 4 |
9 | radphp xe2 에서 인쇄을 하는 방법 문의 합니다? | 자이소 | 2014.05.10 | 1772 |
8 | html5 builder에서 html문서 만들때 브라우저에서 한글이 깨집니다. | 종달새 | 2014.02.28 | 3098 |
7 | RadPHP 평가판에서 정품으로 바꾸려는데 어떻게 하나요? | 관리자 | 2012.07.20 | 7050 |
6 | radphp를 공부해 보려고 하는데요.. [1] | 태랑 | 2012.07.12 | 7433 |
5 | RadPHP와 관련해서 스터디 할만한 자료는 없나요? | 관리자 | 2012.04.10 | 8149 |
4 | 그리드 연결 [1] | 모든길 | 2012.04.13 | 8301 |
3 | 글씨 크기 [1] | 모든길 | 2012.05.12 | 9251 |
2 | 한글 [3] | 모든길 | 2012.04.12 | 9254 |
1 | RAD PHP 개발과정 및 배포방법 [2] | cdrd | 2012.04.23 | 9615 |
Form5는 TForm5의 인스턴스 변수입니다. 즉 TForm5를 생성한 객체를 담고있습니다.
Assigned() 함수는 객체가 할당되어 있는지 확인하는 함수입니다.(Form5 <> nil 과 동일)
즉 할당되어 있지 않으면(not Assigned) 인스턴스 변수에 객체를 생성해 할당하는 코드를 동작하도록 작성하셨네요.
문제는 폼을 닫으면 그 다음부터 폼이 표시되지 않을 수 있습니다.
그래서, 폼을 닫을때 인스턴스 변수를 초기화 하는 코드가 필요합니다.
일반적으로 폼의 클로즈 이벤트(OnClose)에 아래와 같이 구현합니다.
procedure TForm5.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
Form5 := nil;
end;