Re[6]: Клавиши в Internet Explorer
От: KBH  
Дата: 24.06.03 14:53
Оценка:
Здравствуйте, DSD, Вы писали:

DSD>Здравствуйте, KBH, Вы писали:


DSD>Например, можете стандартным способом(типа SendMessage или PostMessage) передать код кнопки на "форму" самого обьекта.


Нужно использовать SendMessage() для посылки сообщения напрямую компоненту ActiveX.

DSD>Единственно — коды клавиш у браузера и у винды в целом могут не совпадать, тогда придется писать какое-нибудь преобразование из одной системы кодов в другую.


Я сделал так:

<HTML>
<H1> C++Builder 5 ActiveX Test Page </H1><p>
You should see your C++Builder 5 forms or controls embedded in the form below.

<script language="javascript">
function KeyDown()
{
  var Key = event.keyCode;     
  if( Key == 9 )
    event.returnValue = false; // Подавляем стандартную реакцию
  document.all.XObj.KeyPress(Key);
}
</script>
<body onkeydown="javascript:KeyDown()">

<HR><center><P>
<OBJECT id = "XObj"
      classid="clsid:5F34CE34-982F-11D7-9505-00C12801801C"
      codebase="/ActiveFormProj1.inf"
      width=522
      height=336
      align=center
      hspace=0
      vspace=0
>

</HTML>

И не надо ничего преобразовывать. Всё отлично работает!!!
Спасибо за помощь.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.