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
[56668] Re:c++ builder 와 turbo c++ explore 2006 에 관하여 간단한 질문
장성호 [nasilso] 1098 읽음    2009-04-20 00:45
강아지 님이 쓰신 글 :
: 제 나이 34살 직장인.
:
: 컴과는 전혀 무관한 직업을 가지고 있지만, 항상 programming 에 관심이 많았던 저...
: 이제와 늦은나이에 vc++ 을 버리고,
: 새로운 tool 로서, 상용프로그래밍이 가능한 무료 IDE 를 선택하는 과정에서
: 결국 turbo c++ explore 2006  를 찾아냈습니다.
:
: 그런데, 환경이 VC++ 와는 전혀 다르기 때문에 정말 뭐가 뭔지 알수가 없군요...
:
: 이에, 여러분들의 고견을 듣고 싶습니다.

: 1. c++ builder 와 turbo c++ explore 2006 는 같은 거라 들었고 , 단순히 COMPONENT 의 추가가 가능한지에
:    따라서 나뉜거라 들었는데... 맞나요?
:    강좌를 하나 봤는데, Object Inspector 화면이 제가 깔은 것과 조금 달라서 여쭙니다.

   * C++Builder와 turbo버젼의 차이.. 저도 그렇게 알고 있습니다.
   * 보신 동영상 강좌가 어떤 것인지요?


: 2. vc 의 api 프로그래밍시 main 윈도우 크기라든가 위치 설정 소스가 있었는데 지금은 없구,
:    그리고 mdi 에서 자식 윈도우가 자동으로 하나 뜨도록 하고 싶은데, 어디다 어떻게 해야 할지 모르겠습니다.
   * MDI 프로그램을 해보시려는 것인가요?
   MDI프로그램을 하려면 첫번째 생성되는 폼의 FormStyle이 fsMDIForm이어야 합니다.
   * 그리고 자동으로 MDI-Child폼이 하나 뜨려면?
      File->New에서 Form하나 추가하시구요.
     그 추가한 폼의 ObjectInspector에서 FormStyle을 fsMDIChild로 하시면 됩니다.
   
  >> 프로젝트 옵션의 Forms에서 Auto-create에  MDIForm이 제일 위에 있어야 하구.. MDIChild로 된것도
       Auto-Create에 들어가 있으면 됩니다.


: 3. turbo c++ explore 2006  의 mdi project 자동생성시 처음 만들어지는
:   파일들의 연관성 및 구조를 좀 알고 싶습니다.
    turbo c++ explore 2006은 써보지 않아서 잘 모르겟습니다만..
   C++Builder 2007 Pro로 mdi project 생성시켜보니..

mdiapp.cpp   //WinMain함수가 있는 파일입니다.
                     //프로그램의 시작이 있고 메인폼과  About폼을 생성하고
                    //프로젝트를 시작하는 unit입니다.

main.cpp    //MDI메인폼이네요
  - main.h
  - main.cpp
  - main.dfm  //xxx.dfm 파일은 폼위에 컴포넌트 및 컨트롤 그리고 폼의 프로퍼티 등의 정보를 저장해둔 파일
                    //이 파일을 컴파일되면 그대로 리소스파일로 만들어져 exe에 포함되구요
                    //메인폼이 Create될때 리소스에서 xx.dfm에 들어있던 정보를 읽어와서
                    //폼위에 컨트롤을 만들고 이벤트를 연결하고 프로퍼티를 설정합니다.        

ChildWin.cpp  //Child폼도 메인폼과 마찬가지구요 다른점은 FormStyle을 fsMDIChild로 되어있네요
  - ChildWin.h
  - ChildWin.cpp
  - ChildWin.dfm

mdiapp.res   //기본 exe의 리소스 파일이 들어가 있습니다.
                    //맨처음에 생성되었을때는.. 디폴트 아이콘이하나 들어있을정도 겠네요

about.cpp    //프로그램 About용 Form이네요 .. FormStyle은 fsNormal 이구 BorderStyle이 bsDialog이네요
   - about.h
   - about.cpp
   - about.dfm


mdiapp.cpp파일을 보니 다음과 WinMain함수 소스가 있네요
프로그램 시작되면서 ..
  1) 메인폼 생성하고
  2) About폼 생성하네요
  3) 그리고  메세지 펌프 루프로( Run()) 들어가네요
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
    Application->Initialize();
    Application->CreateForm(__classid(TMainForm), &MainForm);
    Application->CreateForm(__classid(TAboutBox), &AboutBox);
    Application->Run();

    return 0;
}


위 run함수 호출앞에
Application->CreateForm(__classid(TMDIChild), &MDIChild);
가 들어가면 디폴트로 Child폼도 하나생성될것입니다.

그럼..

+ -

관련 글 리스트
56666 c++ builder 와 turbo c++ explore 2006 에 관하여 간단한 질문 강아지 1070 2009/04/19
56668     Re:c++ builder 와 turbo c++ explore 2006 에 관하여 간단한 질문 장성호 1098 2009/04/20
56682         Re:Re:c++ builder 와 turbo c++ explore 2006 에 관하여 간단한 질문 강아지 1122 2009/04/21
56681         Re:Re:c++ builder 와 turbo c++ explore 2006 에 관하여 간단한 질문 강아지 1042 2009/04/21
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.