Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
Project메뉴 중 option에 대해서. 좀..
Project메뉴/option의 Forms 페이지의 기능에 대해 자세히 알고 싶습니다.
1. main form
2. auto-create forms
3. Available forms
의 기능에 대해서 아시는 분 초보자가 알기 쉽게
알려주시면 대단히 감사하겠습니다.
2
COMMENTS
김우철
•
1999.06.16 09:35
고수님의 답변에 덧붙여 몇자 적습니다.
일반적으로 Application을 만들때 젤 먼저 결정해야할 문제중 하나가 MDI형태로 구현할 것인지, SDI 형태로 구현할 것인지에 대한 것입니다.
Access나 Excel같은 MS제품이 일반적인 MDI형태이구요, Delphi개발환경이 엄밀히 말하면 MDI와 SDI가 결합된 형태라고 할수 있습니다.
이런 MDI와 SDI에 대한 설명이 질문에 대한 답변이 될수 있을것 같습니다.
* SDI
FormStyle : fsNormal, Auto-Create forms
Project/Option/Form tab : 메인폼 지정
일반적으로 Auto-Create form으로 설정하고 Show Method를 통해 화면에
나타납니다.
* MDI
메인폼 FormStyle : fsMDIForm
child form FormStyle : fsMDIChild
위와 같이 하면 자식창을 갖는 main폼을 만들고,
자식창을 Available로 바꾸면 (project option에서...)
자식창이 없는 main폼을 만들수 있습니다.
자식창을 화면에 보이기 위해서는
Form_child := Tform_child.Create(self);
그리고, 생성된 폼을 종료하더라도 폼은 여전히 살아있는데, 메모리에서 완전히
삭제를 해야 없어지게 됩니다.
자식창 종료시 없어지게 하려면, 자식창의 Close Event에
Action := caFree;
그러면, FormStyle이 normal이고, Project option에 Available form으로 되어
있다면 어떻게 해야 될까요
폼을 생성하는 것만 다른데
Form := TForm.Create(self);
Form.Show;
와 같이 해주어야 합니다.
그리고 MDI 형태로 만들고 폼을 생성한후, 다시 만들면 같은 폼이 또 만들어 집니다. MDI 에서 창을 한번만 만들기 위해서는 다음의 코딩을 추가해야합니다.
var i : integer;
begin
for i:= 0 to MDIChildCount-1 do
if MDIChildren[i] is TForm_child then
begin
Form_Child.Show;
exit;
end;
Form_Child := TForm_Child.Create(self);
end;
여기서 Form_Child는 자식창의 이름입니다.
그럼 이만...
0
0
삭제
수정
댓글
안치봉
•
1999.06.16 03:55
최선기 께서 말씀하시기를...
> Project메뉴/option의 Forms 페이지의 기능에 대해 자세히 알고 싶습니다.
> 1. main form
> 2. auto-create forms
> 3. Available forms
> 의 기능에 대해서 아시는 분 초보자가 알기 쉽게
> 알려주시면 대단히 감사하겠습니다.
main form > 응용어플리케이션의 메인폼 - 이게 닫히면 프로그램이 종료되는 습성(?) 이 있습니다.
auto-create forms > 응용프로그램이 실행되자 마자 자동으로 메모리상에 생성될 폼 - 즉! 눈에 보이지 않을뿐이지 이미 생성이 된 상태입니다.
Available forms > 응용프로그램이 실행되자 마자 자동으로 메모리상에 만들어지지는 않지만 실행시 동적으로 폼을 생성해 사용할수가 있는폼
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
이호선
•
1999.06.16 07:06
1
COMMENTS
/
0
LIKES
Modal폼의 부모폼을 알려면..
안치봉
•
1999.06.16 18:48
이호선 께서 말씀하시기를... > 안녕하세요 > 한 폼에서 ShowModal로 폼을 띄웠습니다. 이 Modal폼에서 ...
이 소라
1999.06.16 06:45
0
COMMENTS
/
0
LIKES
찾은 문자열을 한번만 뿌리고 싶은데용 ^|^
초보
•
1999.06.16 06:05
2
COMMENTS
/
0
LIKES
[급구]자료백업 및 복구하는 프로그램 예제
신인재
•
1999.06.17 01:08
테이블이 어떤 테이블인지..... 만약 파일시스템에서 사용하는 파라독스같은 것이면 delzip을 이용하...
초보
•
1999.06.17 03:14
감사합니다. 근데 바쁘신가봐요 자료실에 확인해 봤는데 없더라구요 빨리 올려주세요 그럼.. 신인...
이주흥
•
1999.06.16 06:04
1
COMMENTS
/
0
LIKES
레지스트리 저장및 읽어오기 에서...
안치봉
•
1999.06.16 18:54
이주흥 께서 말씀하시기를... > 이거 여기 질문해도 되나 모르겠습니다.. > 다름이 아니고 레지스트리에 ...
홍성원
•
1999.06.16 05:27
1
COMMENTS
/
0
LIKES
델파이의 폼 디자인을 모사하는 방법...
안치봉
•
1999.06.16 18:57
홍성원 께서 말씀하시기를... > 델파이에서의 '폼 디자인'을 그대로 > 모사할 수 있는 방법을 알고 싶습...
서현승
1999.06.16 04:57
0
COMMENTS
/
0
LIKES
DBGrid에 관한 질문...
최기훈
•
1999.06.16 03:10
1
COMMENTS
/
0
LIKES
EventHandler에서 Default 동작을...
조복기
•
1999.06.16 03:45
최기훈 께서 말씀하시기를... > System Menu에서 X로 표시된 버튼을 누르면 User에서 물어본다면 해당 > ...
강윤환
1999.06.16 02:15
0
COMMENTS
/
0
LIKES
SMTP콤포로 UNIX Sendmail 접속
최선기
•
1999.06.16 02:08
2
COMMENTS
/
0
LIKES
Project메뉴 중 option에 대해서. 좀..
Project메뉴/option의 Forms 페이지의 기능에 대해 자세히 알고 싶습니다. 1. main form 2. auto-create forms 3. Available forms 의 기능에 대해서 아시는 분 초보자가 알기 쉽게 알려주시면 대단히 감사하겠습니다.
김우철
•
1999.06.16 09:35
고수님의 답변에 덧붙여 몇자 적습니다. 일반적으로 Application을 만들때 젤 먼저 결정해야할 문제중 하...
안치봉
•
1999.06.16 03:55
최선기 께서 말씀하시기를... > Project메뉴/option의 Forms 페이지의 기능에 대해 자세히 알고 싶습니다....
이영범
•
1999.06.16 01:44
1
COMMENTS
/
0
LIKES
퀵리포트에서 Query컴포넌트 사용....
신호성
•
1999.06.17 17:42
이영범 께서 말씀하시기를... > 안녕하십니까?... > 퀵리포트에서는 Query컴포넌트(이후 Query)를 1개밖...
서영환
•
1999.06.16 01:23
3
COMMENTS
/
0
LIKES
Active Form에서 궁금한 것
안치봉
•
1999.06.16 03:31
서영환 께서 말씀하시기를... > Active Form에서 다운 받은 OCX를 설치하면, > 버전업을 해도 다시 다운...
서영환
•
1999.06.16 04:52
안치봉 께서 말씀하시기를... > 서영환 께서 말씀하시기를... > > Active Form에서 다운 받은 OCX를 설치...
공대규
•
1999.06.29 17:18
> codebase="http://210.116.3.220/t3/tProj1.cab"#version=1,0,0,0 위 부분의 따옴표가 혹시 "htt...
하명훈
•
1999.06.16 01:16
1
COMMENTS
/
0
LIKES
param사용시 에러가.....도와주세요
조복기
•
1999.06.16 01:27
하명훈 께서 말씀하시기를... > procedure TSearch.Button1Click(Sender: TObject); > 쿼리를 엑세스하...
박성훈
•
1999.06.16 01:10
1
COMMENTS
/
0
LIKES
프로그램 종료가 안되요...
안치봉
•
1999.06.16 04:16
박성훈 께서 말씀하시기를... > procedure Button1Click(Sender: TObject); > begin > Self.Close; ...
강미라
•
1999.06.16 00:55
1
COMMENTS
/
0
LIKES
날짜계산방법 좀 알려주세요.
김우철
•
1999.06.16 02:23
고수는 아니지만, 기냥 써볼랍니다. 날짜에 대한 자료를 처리할수 있는 클래스를 만들어서 윤년계산, 해당...
김진성
•
1999.06.16 00:42
3
COMMENTS
/
0
LIKES
SQL SERVER의 레코드수
김태균
•
1999.06.16 00:49
김진성 께서 말씀하시기를... > ORACLE에서는 ROWNUM을 이용하여 존재하는 레코드에 대한 > 각각의 번호...
김진성
•
1999.06.16 06:22
김태균 께서 말씀하시기를... > 김진성 께서 말씀하시기를... > > ORACLE에서는 ROWNUM을 이용하여 존재...
김태균
•
1999.06.16 18:23
음..... 테이블을 만들때 포함시키는 것입니다. SQLServer에서 테이블을 생성할 때 순서가 다음과 같...
최기훈
•
1999.06.16 00:31
1
COMMENTS
/
0
LIKES
Delphi에서 UDP Socket을 사용하려면?
최기훈
•
1999.06.16 03:05
최기훈 께서 말씀하시기를... > 안녕하세요. 염치를 불구하고 이렇게 또 메일을 올립니다. > Delphi에서 ...
장일
1999.06.15 22:58
0
COMMENTS
/
0
LIKES
에러발생-도와주세요.
이주흥
•
1999.06.15 22:55
1
COMMENTS
/
0
LIKES
TrayIcon 에서의 문젭니다...
최석기
•
1999.06.16 01:27
> TrayIcon에서요.. 팝업메뉴를 만드는 방법좀 알려주세요.. > 그러니까 Icon에서 오른쪽 마우스클릭 했을...
디제이
•
1999.06.15 20:59
1
COMMENTS
/
0
LIKES
On Error goto문?
안치봉
•
1999.06.15 21:07
디제이 께서 말씀하시기를... > > 비베에서는 On Error goto문이 있습니다만 > 델파이에서는 어떤식으...
박종성
1999.06.15 20:50
0
COMMENTS
/
0
LIKES
마지막 60개의 레코드(파라독스)?
최선기
1999/06/16 02:08
Views
190
Likes
0
Comments
2
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
일반적으로 Application을 만들때 젤 먼저 결정해야할 문제중 하나가 MDI형태로 구현할 것인지, SDI 형태로 구현할 것인지에 대한 것입니다.
Access나 Excel같은 MS제품이 일반적인 MDI형태이구요, Delphi개발환경이 엄밀히 말하면 MDI와 SDI가 결합된 형태라고 할수 있습니다.
이런 MDI와 SDI에 대한 설명이 질문에 대한 답변이 될수 있을것 같습니다.
* SDI
FormStyle : fsNormal, Auto-Create forms
Project/Option/Form tab : 메인폼 지정
일반적으로 Auto-Create form으로 설정하고 Show Method를 통해 화면에
나타납니다.
* MDI
메인폼 FormStyle : fsMDIForm
child form FormStyle : fsMDIChild
위와 같이 하면 자식창을 갖는 main폼을 만들고,
자식창을 Available로 바꾸면 (project option에서...)
자식창이 없는 main폼을 만들수 있습니다.
자식창을 화면에 보이기 위해서는
Form_child := Tform_child.Create(self);
그리고, 생성된 폼을 종료하더라도 폼은 여전히 살아있는데, 메모리에서 완전히
삭제를 해야 없어지게 됩니다.
자식창 종료시 없어지게 하려면, 자식창의 Close Event에
Action := caFree;
그러면, FormStyle이 normal이고, Project option에 Available form으로 되어
있다면 어떻게 해야 될까요
폼을 생성하는 것만 다른데
Form := TForm.Create(self);
Form.Show;
와 같이 해주어야 합니다.
그리고 MDI 형태로 만들고 폼을 생성한후, 다시 만들면 같은 폼이 또 만들어 집니다. MDI 에서 창을 한번만 만들기 위해서는 다음의 코딩을 추가해야합니다.
var i : integer;
begin
for i:= 0 to MDIChildCount-1 do
if MDIChildren[i] is TForm_child then
begin
Form_Child.Show;
exit;
end;
Form_Child := TForm_Child.Create(self);
end;
여기서 Form_Child는 자식창의 이름입니다.
그럼 이만...