Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.06.18;
Скачать: [xml.tar.bz2];

Вниз

Отловить события (TWebbrowser)   Найти похожие ветки 

 
yahaha   (2006-05-08 15:14) [0]

Интересуют компоненты "TWebBrowser" и "TDHTMLedit".
Как отлавливать "внутренние" события в браузере
(типа попытки ввести текст, переместить курсор, растянуть таблицу, кликнуть по ссылке и т.п.)?

В TDHTMLedit, например, есть метод QueryStatus, но что с ним делать, непонятно...

Прошу подсказать, кто с этим работал...  :???:


 
easy ©   (2006-05-08 15:20) [1]

http://dfc.com.ru/?sid=2&id=9&itemid=35


 
yahaha   (2006-05-08 23:12) [2]

Спасибо... вроде что-то получилось...

Только есть ещё несколько вопросов:

1. Я кликнул по ссылке в браузере. Обработчик получил это событие. Как теперь в обработчике указать браузеру, выполнять переход по ссылке или нет (сейчас он в любом случае его выполнит). Или вообще - вместо перехода сделать что-то ещё?

2. Где достать список событий? И как отловить, например, попытку мышью растянуть таблицу? (в DesignMode="On")?

3. Как получить дополнительную информацию (на какую ссылку человек кликнул, на сколько пунктов растянул таблицу и т.п.)?

4. Что почитать по теме?


 
yahaha   (2006-05-09 00:55) [3]

Хмм... Выложу сам ответы на свои вопросы... может кому-то пригодится... =)

1. ReturnValue:=True/False (разрешить/отменить действие)
Другие свойства/методы IHTMLEventObj - на
http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/mshtml/reference/ifaces/eventobj/eventobj.asp

2. Список событий - на
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/events.asp

Но несколько вопросов всё же остаётся:

- Список событий (http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/events.asp) не совпадает со списком в "Doc" (в примере http://dfc.com.ru/?sid=2&id=9&itemid=35). На MSDN событий почему-то гораздо больше... В чём дело?

- Как выловить попытку изменить размеры таблицы или перетащить мышкой объект?

- Пользователь кликнул на картинку (не ссылку!) или на элемент INPUT. Как узнать имя/SRC этой картинки и имя/значение элемента INPUT


 
yahaha   (2006-05-09 14:21) [4]

Ещё один маленький вопрос...

procedure TForm1.RegEvents;
begin
...
Doc.DesignMode := "On";
...
 EventHandler := THTMLEvent.Create(Doc);
 EventHandler.OnEvent := KeyEvent;
 Doc.mousedown := EventHandler as IDispatch;
end;

procedure TForm1.MyEvent(EventObject: IHTMLEventObj; EventType: string);
 if (Eventtype="mousedown") and (EventObject.srcElement.tagName="TABLE")  
  then EventObject.returnValue:=false;
end;


Браузер находится в режиме DesignMode="On".
Как видно из кода, если пользователь нажмёт кнопку мышки на таблице, у него (по идее) ничего не должно получиться (т.е. таблица не выделится).

А реально она всё же выделяется! Почему действие не отменилось?



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2006.06.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.012 c
2-1149001787
Махоня
2006-05-30 19:09
2006.06.18
как связать Word c Delphi


15-1148016248
Ega23
2006-05-19 09:24
2006.06.18
С Днём рождения! 19 мая


15-1148487355
Petgt
2006-05-24 20:15
2006.06.18
Срочно! кто может, помогите!


4-1142928962
Макс (гость)
2006-03-21 11:16
2006.06.18
Как определить handle trey я, а там pop up меню значка


3-1145527323
samalex
2006-04-20 14:02
2006.06.18
Выделить целую часть десятичного числа





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский