안영진 wrote:
> 안녕하세요,,저는 델파이를 공부하고 있는 학생입니다.
> 그런데 ..아무리 해도 안되는게 있어서 이렇게 글을 남깁니다.
>
> 저는 MDI 폼을 구현했습니다.
> Form1 은 부모폼
> Form2 는 ActiveX WebBrowser가 들어있죠..
> Form1 에 Button이 하나가 있습니다. 이버튼은 Form2를 계속생성하게 코딩했습니다.
>
> 이프로그램을 컴파일시키고..daum.net으로 가보았습니다..
> 거기서 가입하기로 한번 들어가봤죠...
> 그러고 id입력하고...[중복Check]를 해봤죠.. 새창이 뜨더군요..
> 그러고는 키보드에서 입력을 하든말든 이놈에 프로그램이 눈치를 못채더군요...^^
> 알고보니..각각웹싸이트마다 첫페이지에서 새창이 뜨게끔 만들어진
> 홈페이지에서..즉 자바나 VB등을 실행할때마다 먹통이 되더군요...
>
> 물론..FrameNewWindow(맞나??)암튼 이곳에 새창이 뜨게끔 코딩은 했습니다..
>
> Form2 := TForm2.Create(Application);
> ..
> Form2.WebBrowser_V11.Navigate(Url,MyVariant,MyVariant..);
> ...
> Show;
>
> 이렇게 코딩했습니다.
> 제가 잘못 코딩한건가요..
> 아참!! 그리고요..이왕갈쳐주시는김에..음..
> 폼크레이트시킬때 nil 과 application 은 어떤차이가 있나요??
> 보통 프로그래밍 작업을 하면서도 nil과 application 은 많이 나오는데..
> 무슨 차이가 있나요??
>
> 위 설명이 부족하시면 메일로 보내주십시오..
> 일주일이나 요렇게 저렇게 해보다가 답답해서..이렇게 글을 남깁니다..
>
> 꼭 도움을 주셨으면 합니다.
음... 이건 델 4에서 엑티브로 불렀다는 얘기인데... 이거는 저도 기억이 잘 안나는데....
델 5에서는 기본 컴포로 내장되어 있습니다.
거기서 자신의 창에서만 뜨게 하는 것의 소스를 보여드리겠습니다.
델 5용 컴포에는 onNewWindow2라고 하는 이벤트가 있는데..
procedure TForm1.WebBrowserNewWindow2(Sender: TObject;
var ppDisp: IDispatch; var Cancel: WordBool);
begin
WebBrowser.Navigate(NewURL);
Cancel := True;
end;
이렇게 하면 자신의 창에만 계속 떠지게 되는 거지요! 질문의 뜻이 이거 였으면 좋겠군요!
만약 아니라면 제가 이해를 못한것 이니 좀더 편한 설명을 부탁드리옵니다.
행복하셔요~! 규춘올림...