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
[37520] Re:Re:Re:자문자답입니다.
이단자 [] 753 읽음    2004-10-07 14:24
renderForm에서 d3d를 초기화 하는게 FormCreate였는데 위치가 문제 였더군요
<<mainForm>>
1. renderForm = new
2. renderForm->Parent = mainForm;
3. renderForm->Show();

<<renderForm::FormCreate>>
4. initD3D(this->Handle);

이렇게 했는데

순서가
1 -> 4 -> 2 -> 3
이더군요
d3d가 초기화 된후에 부모의 핸들이 바뀌면 d3d를 다시 초기화 해야 합니다.
이상 자문자답이였습니다.


이단자 님이 쓰신 글 :
: 폼이 따로 있을때는 렌더링이 잘 됩니다.
: 그러다가 버튼을 누르면 렌더링 폼을 다른 폼의 자식으로 하게 했는데 그러면 렌더링 하는것이 출력이 안되더군요.
: FALSE를 리턴한다던가 하는것도 없고... 로직 자체는 잘 돌아가고 있는것 같은데...
: -버튼-
: renderForm->Parent = mainForm;
: 이렇게
:
:
: hz/장석현 님이 쓰신 글 :
: : 동적생성 후에 device를 생성하는 부분을 확인 해 보시길 바랍니다.
: : 동적생성 하신 창에 렌더를 하기 위해서는 device를 생성 할 때 그 창의 핸들을 넘겨 줘야 합니다.
: : d3d쪽의 initialize 문제 일 듯 합니다.
: :
: : - hz -
: :
: :
: : 이단자 님이 쓰신 글 :
: : : d3d를 렌더하고 있는 폼을 다른폼에 자식으로 만들면 화면이 안나오더군요..
: : : 어떻게 해야 하는지 난감...
: : :
: : : MainFrom, D3DForm으로 만들어져 있습니다.
: : :
: : : D3DForm에서 렌더링을 하고 있습니다. 실행하면 잘 됩니다.
: : :
: : : 하지만
: : : D3DForm을 MainFrom에 동적으로 생성해서 자식 폼으로 하면 안되던군요
: : :
: : : - MainForm::FormCreate -
: : : D3DForm* form = new D3DForm(this);
: : : form->Parent = this;
: : : form->Align = alClient;
: : : form->Show();
: : :
: : : 이렇게 했습니다.
: : :
: : : 원래 안되는건지 아니면 다른 뭔가를 해줘야 하는건가요?

+ -

관련 글 리스트
37511 d3d를 렌더하고 있는 폼을 다른폼에 자식으로 만들때 이단자 696 2004/10/07
37516     Re:d3d를 렌더하고 있는 폼을 다른폼에 자식으로 만들때 hz/장석현 727 2004/10/07
37518         Re:Re:d3d를 렌더하고 있는 폼을 다른폼에 자식으로 만들때 이단자 718 2004/10/07
37520             Re:Re:Re:자문자답입니다. 이단자 753 2004/10/07
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.