제가 이전에 썻던 건데... 도움이 될지 모르겟네요.
1. 엑티브엑스에 메쏘드 하나 추가하세요.
...
// 변수로
Document: IHTMLDocument2;
Html: IHTMLWindow2;
... 중략
procedure TwebActiveFormX.SETDOCUMENT(const value: IDispatch);
begin
Document := value as IHTMLDocument2;
Html := Document.parentWindow;
end;
2. html 소스에서는 엑티브엑스 로드한 다음에 SETDOCUMENT에 html 다큐멘트 객체를 전달해줍니다.
document.엑티브엑스.setdocument(window.document);
3. 엑티브엑스에서 다음과 같이 호출해주는 로직을 넣으면 됩니다.
if Assigned(Html) or (Html <> nil) then
begin
Html.execScript(스크립트이름, 'JavaScript');
end;
김현승 님이 쓰신 글 :
: 안녕하세요
: 질문의 제목과 동일합니다.
: Activx에서 자바스크립크의 함수를 호출하려면 어떻게 하나요??
:
: 예를 들어
: <\script\>
: function AAA(aa){
: alert(aa);
: }
: <\/script\>
: 라는 것이 있으면 델파이로 Activx를 짜고 있는데 Activx에서 작업을 다 마치고 스크립트를 호출해서 마무리를 하려고 합니다.
: 보통 html에선 onclick="AAA('aaa')"하면 되는데....
:
: 그런데 스크립트에서 Activx로 데이터를 넣는것까지 어찌 메소드 만들어 가능은 하는데 그 반대로 Activx에서 스크립트를 호출하는 방법을 모르겠네요...
:
: 어떻게 하는 것인지 좀 알려주세요
:
: 질문의 내용에 대해 두서가 없습니다. 그럼 부탁드립니다.
|