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

C++빌더 Q&A
C++Builder Programming Q&A
[41424] 좋은 정보 알려주셔서 감사합니다.
John [neominer] 771 읽음    2005-08-11 16:15
유영인님께서 말씀하신 방법을 실제로 사용해 보지 못했습니다만,
그 방법이 훨씬 더 효율적이고, 가벼운 프로그램을 만들수 있겠네요.
적용해 보겠습니다.^^

다시 한번 감사드립니다.



...
답변을 기다리는 동안, 제 나름으로 고민 끝에 알아낸 방법은...

우선 CUnit.cpp를 다른 이름(C1Unit.cpp) 으로 저장한후,
자동으로 함께 생성되는 C1Unit.dfm, C1Unit.h 와 C1Unit.cpp의 각각의 코드를 에디트에 연 후,
(*.dfm 파일도 코드가 있더군요!! ^^;;)
TCForm 클래스 범위 연산자(?!)를 TC1Form으로 일일이 바꿔주고,

즉, 코드상의 TCForm::MemberFunc() .. 등등을 TC1Form::MemberFunc() 로... 수정후, 저장을 하고,
C1Form 을 프로젝트에 추가를 하면,

CForm과 완전히 동일한 또하나의 C1Form을 만들수가 있었습니다.
그다음 C1Form을 다른 기능을 하도록 수정하여 사용할수 있네요.

.....

CUnit.cpp를 다른이름으로 저장하기 해서..
C1Unit.cpp란 파일을 만들었지만, 실제 코드에는 CUnit.cpp의 내용이 그대로 복사되기 때문에..
CForm 클래스 명이  각 맴버함수 및 변수들의 범위 연자와 클래스 상속 구문에 그대로 사용이 되어...
C1Form을 변경하지만 기존의 CForm을 만지게 된 경우더군요...



유영인  Cuperido 님이 쓰신 글 :
: 빌더에서 기본적(UI적)으로 제공하는 폼의 생성 방식은 크게 두 가지라고
: 생각하셔도 될 것 같습니다.
:
: 한가지는 AutoCreate Form 이고, Available Form 인데요,
: 보통 폼을 만들면 AutoCreate 폼으로 추가됩니다.
: 이것을 변경하기 위해서는 Project Option에 들어가시면 변경하실 수 있습니다.
:
: C폼과 비슷한 C1 C2 를 만드시려면
: C폼을 만드시고, AutoCreate Form이 아닌, Available 폼으로 생성합니다.
:
: 그 다음, 만드는 시점에서 C폼과 관련한 파일인 헤더 파일을 인쿠르드 합니다.
: (아래 예제를 비추어 보면 CUnit.h)
:
: #include "CUnit.h"
:
: 그 다음, 만드는 코드를 집어넣습니다.
:
: TFormC           *C1 = new TFormC(NULL);
:
: C1->Name = "FormC1";      // 이름도 정해줍니다.
:
: 그 다음, C1->Show(); 이런식으로 사용하시면 됩니다.
:
:
:
: cuperido
:
:
: John 님이 쓰신 글 :
: : 하나의 프로젝트에 여러 폼이 있습니다.
: : 메인, A, B, C
: : 그런데.. C와 비슷한 기능을 하는 폼 C1, C2,..... 를 만들어서 쓰고 싶습니다.
: :
: : 폼을 새로 만들려니, 같은 걸 다시 만들기가 여간하지 않네요..
: : 그래서 복사를 해서 다른 기능만 구현하려고 하는데..... 방법을 모르겠습니다.
: :
: : C폼과 관련한 화일들이 4가지가 있더군요. Cunit.cpp, Cunit.dfm, .......
: :
: : 우선 C 폼을 열고난후, 다른이름으로 저장하기 해서..
: : C1unit.cpp로 저장하니 C1unit.dfm ... 등등도 같이 생성이 되더군요.
: :
: : 그래서 C1폼을 변경하고 저장을 했더니...
: : C1unit.cpp과 C1unit.cpp가 참조하는 폼 파일인 Cunit.dfm 이 같이 바뀌네요.
: : C1unit.cpp 파일은 그대로 Cunit.dfm을 참조 하더군요.
: :
: : 새로 생성된 C1unit.dfm을 참조하도록 하는 방법이 있는지요?

+ -

관련 글 리스트
41401 폼을 복사하려면 어떻게 해야할까요? John 818 2005/08/10
41433     standrad palette에 있는 Frames를 활용해 보심이 어떨런니요... (냉무) evergreen 745 2005/08/11
41414     Re:폼을 복사하려면 어떻게 해야할까요? 유영인 Cuperido 839 2005/08/10
41424         좋은 정보 알려주셔서 감사합니다. John 771 2005/08/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.