Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[3784] [답변] BULLY/ 아래 추가 질문인데요...modalresult.
말근샘물 [ ] 1410 읽음    1998-07-28 15:11
Modal이라는 개념을 아시고 계십니까 ?
일단은 모르시는것 같아서 말씀드립니다...

윈도우에서 다이얼로그박스를 띄울때는 2 가지 방법을 씁니다.
Modal 다이얼로그와 Modaless 다이얼로그.
모달은 그 다이얼로그가 화면에 나타나면 원래 그 다이얼로그를 호출한 윈도
우에는 포커스가 돌아가지 못하는 것입니다. 즉 그 다이얼로그가 닫혀야만
원래의 윈도우가 포커스를 받는거죠... 반대로 모달리스는 그 다이얼로그가
떠 있어도 여전히 호출한 윈도우가 포커스를 받는 경우죠. 왜 워드프로세서
에서 찾기 기능을 보여주는 다이얼로그 있죠 ? 그게 대표적인 경웁니다..

폼에서 ModalResult는 한 폼이 다른 폼에 의해 호출되었을다가 사용자의 선
택에 의해 종료될때 어떤 값을 돌려줄건지를 결정하기 위해 있습니다. 즉,
모달 폼에서 사용자가 어떤 작업을 정상적으로 하고 확인 단추를 눌러 종료
했는지 아니면 취소 단추를 눌러 종료했는지 확인하고자 할 경우를 말합니다.

그래서 일단 질문하신 내용을 보니 아마도 하나의 폼에서 설정을 하고 그렇게
하신게 아닌가 하는 생각이 듭니다... 모달폼은 반드시 ShowModal 메소드에
의해 호출이 되어야 하는데요...
다음 코드대로 해보세요...

Form1.Button1Click(Sender:TObject);
begin
  if Form2.ShowModal = mrOK then
     ShowMessage('OK')
  else
     ShowMessage('Cancel');
end;

별로 어려운 사항이 아니니까 쉽게 이해하시리라 생각합니다...
그리고 첫번째 질문에 있는 내용은 폼의 ModalResult 프로퍼티에 버튼의
ModalResult 프로퍼티에 있는 값을 대입하는 것 같은데요, 폼에 있는 버튼
의 ModalResult값을 세팅해 놓으면 사용자가 누른 버튼에 있는 ModalResult
값이 자동으로 그 폼의 ModalResult로 대입되기 때문에 필요없는 코드가
아닌가 생각됩니다...(필요할 수 도 있지요...혹시...)


+ -

관련 글 리스트
3784 [답변] BULLY/ 아래 추가 질문인데요...modalresult. 말근샘물 1410 1998/07/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.