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
[59406] Re:컴포넌트만들기 초간단 예제 ???
박지훈.임프 [cbuilder] 1590 읽음    2009-12-10 12:59
1. 새 프레임을 만드세요. (File -> New -> Other, C++Builder Files 탭에서 Frame)

2. 프레임 디자인 화면에서 원하시는 대로 컴포넌트를 추가하세요. 필요하면 이벤트 핸들러를 통해서 기능도 추가하세요.

3. 프레임의 Name 속성을 원하는 컴포넌트 이름으로 바꾸세요.

4. 전역 함수로 Register 함수를 추가하세요. 이 함수를 선언하고 정의하는 코드는 아주 간단하고, 아무거나 서드파티 컴포넌트 소스를 보면 보시면 있으니 거기서 베끼고 클래스 이름과 탭 이름만 원하는 대로 수정하면 됩니다.

5. 적당한 패키지에 이 프레임 유닛을 추가하고 컴파일/설치하면 됩니다. 지정한 탭에 이 프레임이 컴포넌트로 나타날 겁니다.


TFrame도 TComponent에서 상속받은 클래스이므로, 단지 Register 함수만 추가하면 C++빌더 IDE에서 컴포넌트로 동작합니다. (물론 TForm도 가능하지만 아무래도 타이틀바와 외곽선 때문에 보기가 싫으니까..) 특히 컴포넌트를 TFrame으로 만들면 폼디자이너에서 원하는 대로 컴포넌트를 추가하고 속성들을 설정해둘 수 있기 때문에, 여러 컴포넌트들로 구성되는 복합 컴포넌트를 만들 때 아주 편리합니다.

주의하실 점은, 이렇게 폼디자이너로 dfm을 디자인해서 만든 컴포넌트는 이것을 사용해서 실행파일을 만드는 과정, 즉 링크 과정에서 dfm도 필요하게 된다는 점입니다. 따라서 이 컴포넌트를 다른 개발자에게 배포할 때, cpp 소스 대신 obj 파일만 주더라도 dfm은 반드시 함께 줘야 합니다.



헤용 님이 쓰신 글 :
: 텍스트박스 + 버튼  컴포넌트를 만들려고 합니다.
:
: 하나의 컨트롤 을 만드는 예제는 쉽게 찾는데...
:
: 한개 이상의 컨트롤이 합쳐져있는 컴포넌트 예제가 없네요
:
: 아무것도 필요없고요....(이벤트나 기타등등)
:
: 위두개의 컨트롤이 들어가있는 컴포넌트 예제 하나만 짜주세요
:
: 고수님들 부탁드립니다.

+ -

관련 글 리스트
59404 컴포넌트만들기 초간단 예제 ??? 헤용 1072 2009/12/10
59406     Re:컴포넌트만들기 초간단 예제 ??? 박지훈.임프 1590 2009/12/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.