Q&A

  • Type Library 사용법 가르쳐주세요...-_-
Type Library 사용법 좀 자세히 가르쳐 주세요.

제가 사용한 건...

New Property에서 Read/Write로 XXX를 만들었습니다.

htm 소스에는
<OBJECT
  classid="clsid:65A171B3-A6D3-4293-BD02-EEF6761B00AE"
  codebase="ActiveFormProj1.ocx#version=1,0,5,0"
  width=658
  height=407
  align=center
  hspace=0
  vspace=0
  id="ActiveFormProj1"
>
<PARAM NAME="XXX" VALUE="12345">
</OBJECT>

델파이 소스에는
function TActiveFormX.Get_XXX: WideString;
begin
//
end;

procedure TActiveFormX.Set_XXX(const Value: WideString);
begin
    m_MyXXX := Value ;
end;

m_MyXXX 변수에 Value를 넣었는데...
ActiveFormCreate에서 m_MyXXX 변수를 읽어보니까...
m_MyXXX 변수에 아무런 값이 없네요...
폼위에 버튼을 하나 두고, 그 버튼에서 변수를 읽어도... 역시... -_-;;
위와 같이 하면 m_MyXXX 변수에 12345 값이 들어가야 하는거 아닌가여...??

꼭 좀 가르쳐 주세요.
부탁드립니다. 감사합니다.
1  COMMENTS
  • Profile
    김규한 2002.02.22 21:08
    안녕하세요? 저도 잘 알지는 못하지만.. 해본 경험이 있어서 말씀드립니다 ^^;

    제가 생각하기에는 ActiveX 로딩중에 값을 받아서 그러는것 같거덩요.
    무슨말이냐 하면

    <OBJECT
      classid="clsid:65A171B3-A6D3-4293-BD02-EEF6761B00AE"
      codebase="ActiveFormProj1.ocx#version=1,0,5,0"
      width=658
      height=407
      align=center
      hspace=0
      vspace=0
      id="ActiveFormProj1"
    <PARAM NAME="XXX" VALUE="12345">  <--- 요부분에다가 넣지 말구요.
    </OBJECT>

    만약 위에 파라메터가 로딩시에 자동으로 들어가게 하려면 약간 딜레이를 줘야하거덩요.
    그러기 위해선, 자바스크립트나 VB스크립트로 딜레이를 해줄 함수를 만들어야해요.
    전 자바스크립트로 예제를 했습니다.

    <script language=javascript>
       setTimeout("_start()", 1000);    
    </script>

    이거 먼지 아시죠? 폼 로딩된후 1초후에 _start() 함수를 실행하란겁니다.
    이 밑에..
    <script language=javascript>
    function _start() {
      document.ActivexForm.Get_XXX("12345");
    }
    </script>

    이렇게 하시면 되고요. ActivexForm 이 머냐고 물으신다면
    <OBJECT
      classid="clsid:65A171B3-A6D3-4293-BD02-EEF6761B00AE"
      codebase="ActiveFormProj1.ocx#version=1,0,5,0"
      width=658
      height=407
      align=center
      hspace=0
      vspace=0
      name="ActivexForm"   <---- id를 이렇게 변형하면 될 겁니다.
    </OBJECT>

    그리고 자동으로 하지 않고 페이지에 <A>태그를 이용할수도 있습니다.
    <a href=javascript:Get_XXX()>ActiveX에파라메터주기</a>
    <script language=javascript>
      function Get_XXX() {
        document.ActivexForm.Get_XXX("12345");  //document가 들어가는지 않들어가는지 까먹었떠요 --;;
      }
    </script>

    도움이 되기를 바라며 이만 ^^;

    언제한번 일괄적으로 정리해서 강좌란에 저와같은 초보자를 위한 ActiveX Form 에대한 강좌 올리겠습니다.