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
[7418] Re:MDI에서 활성화된 차일드 윈도 정보 얻어오기
박지훈.임프 [cbuilder] 2076 읽음    2001-05-13 20:16
임펠리테리입니다.
열심히 설명을 해주셨는데, 질문내용을 제대로 이해했는지 자신이 없네요.

제가 파악한 내용으로는.. 세가지의 차일드폼이 있군요. 사용자가 선택해서 오픈한 원래의 영상을 보여주는
차일드, 그리고 그 원 영상에 대해 #1과 #2 필터링을 위해 두개의 차일드를 연다.. 맞는지요.

활성화된 차일드를 얻어내려면 메인폼의 ActiveMDIChild 프로퍼티를 얻으면 됩니다. 단, 이 프로퍼티는
TForm형의 포인터이므로 필요한 차일드폼의 타입 포인터로 캐스팅을 해주어야 그 폼안에 있는 컴퍼넌트에
접근할 수 있구요.

문제와는 관계가 없는 의견입니다만, 제 생각으로는, 세가지 차일드가 하는 일이 확실히 다르므로, 디폴트로
빌더가 만들어주는 차일드폼 외에 두개의 차일드폼을 더 만들어서 각각의 역할을 나누어주는 것이 좋을 것 같네요.

그럼 참고하시길...


김정규 님이 쓰신 글 :
: 안녕하세요... 꾸벅~
:
: MDI 어플리케이션으로 프로젝트를 만들고 영상처리 프로그램을 만들고 있습니다...
:
: MDI 프로젝트에서 기본적으로 제공하는 차일드 윈도는 텍스트 입력 윈도인지라 그 부분은 막아버리고
:
: 제가 폼을 하나 만들어서 영상을 새로 불러올 때마다 제가 만든 폼을 하나씩 생성하게 했습니다...
:
: 지금 막히는 부분은 이렇습니다...
:
: 1. 원 영상 오픈
:
: 2. 원 영상에 대해 #1 필터링 수행
:
: 3. 새로운 창을 열어 2번의 결과 view
:
: 4. 원 영상에 대해 #2 필터링 수행
:
: 5. 새로운 창을 열어 4번의 결과 view
:
: 이렇게 하고 싶은데 잘 안되는군요...
:
: 현재는 4번 후 5번을 하게 되면 원 영상에 대한 #2 필터링이 수행되는 게 아니라 3번 영상에 대해
:
: #2 필터링을 수행하고 있습니다...
:
: 아무래도 현재 활성화되어 있는 창의 정보를 제대로 얻지 못해서 그런 것 같습니다...
:
: 새로운 차일드 윈도를 열 때는 FrmView = new TFrmView(Application); 를 사용해서 열고 있습니다...
:
: 그리고 영상 데이터를 읽어올 때는 GetPixel()을 이용해서 읽어오고 있으며 이 때 핸들은
:
: Handle = cFrmView->ImgView->Canvas->Handle을 사용해서 하고 있습니다...
:
: 음... 이 정도면 필요한 정보는 다 말씀드린 것 같은데 글이 너무 엉성하지는 않은지 걱정이네요...
:
: 현재 활성화되어 있는 창의 정보를 제대로 얻어올 수만 있다면 쉽게 풀어질 것 같은데 쉽지 않네요...
:
: GetPixel() 말고 다른 방법으로도 가능한지도 궁금합니다...
:
: 여러 고수님들의 가르침 기다리겠습니다...
:
: 감사합니다.. 꾸벅~ (_ _)

+ -

관련 글 리스트
7391 MDI에서 활성화된 차일드 윈도 정보 얻어오기 김정규 1867 2001/05/11
7418     Re:MDI에서 활성화된 차일드 윈도 정보 얻어오기 박지훈.임프 2076 2001/05/13
7451         Re:Re:MDI에서 활성화된 차일드 윈도 정보 얻어오기 김정규 1933 2001/05/14
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.