Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Обработка событий TWebBrowser  (Прочитано 12253 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Okkkks
Помогающий

by
Offline Offline

« : 08-06-2010 09:10 » 

Ребята...
У меня таки подучилось передать команду из программы в среду. =)) Спасибо за помощь =)
Однако нарисовалась новая проблемка... =( может подскажете...
Мне нужно в мою программу (написаную на Delphi) передать строку из html файла. Т.е. есть страница html, на ней допустим ссылка. если пользователь нажимает на ссылку, то в программу передаётся строка. Как бы это сделать? Подкиньте идейку =)
Может мне не сюда... тогда подскажите куда.  а то я что-то не нашла подходящего раздела.
« Последнее редактирование: 08-06-2010 09:15 от Okkkks » Записан
zubr
Гость
« Ответ #1 : 08-06-2010 09:30 » 

Самый простой вариант:
Использовать компонент TWebBrowser и его событие OnNavigate
Записан
Okkkks
Помогающий

by
Offline Offline

« Ответ #2 : 08-06-2010 10:03 » 

Спасибо =)) Гугл мне в помощь=))
Записан
x77
Модератор

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #3 : 08-06-2010 10:06 » 

Okkkks, а где открыта страница? в самой программе, или в стороннем браузере? если в браузере, то в каком?
Записан

Okkkks
Помогающий

by
Offline Offline

« Ответ #4 : 08-06-2010 10:19 » 

У меня по умолчанию firefox в нем и открыта страница, но впринципе может быть любой браузер
Записан
zubr
Гость
« Ответ #5 : 08-06-2010 10:30 » 

Использовать сторонний броузер можно конечно, но боюсь, человеку только начинающему программировать это будет не под силу, если только кто то за него (нее) не напишет код. Еще раз повторяю:
1. Ложишь на форму компонент TWebBrowser
2. В событии OnCreate формы выполняешь метод WebBrowser1.Navigate, где параметром будет путь к твоему html-файлу.
3. В событии OnBeforeNavigate вебброузера в параметре URL проверяешь какая ссылка была кликнута, если та что тебе надо выполняешь нужный тебе код.
И все - манипуляций на 2-3 минуты времени и почти никакого кода.
Записан
Okkkks
Помогающий

by
Offline Offline

« Ответ #6 : 08-06-2010 10:34 » 

Спасибо, ребята =)) Вроде всё понятно. Попробую сделать =)
Записан
x77
Модератор

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #7 : 08-06-2010 10:42 » 

У меня по умолчанию firefox в нем и открыта страница, но впринципе может быть любой браузер

а вы загляните вот сюда: http://ru.wikipedia.org/wiki/Список_браузеров

для сотен браузеров писать собственные обработчики событий - задача далеко не тривиальная. и даже для 5-6 основных браузеров. если есть возможность изменить условие задачи (и открывать страницу в собственной программе) - слушайте zubrУлыбаюсь
Записан

Okkkks
Помогающий

by
Offline Offline

« Ответ #8 : 08-06-2010 12:05 » 

А всё таки... как бы вы отлавливали нажатие ссылки в стороннем браузере?..  Краснею  Интересно же...  Краснею
Записан
x77
Модератор

ro
Offline Offline
Пол: Мужской
меняю стакан шмали на обратный билет с Марса.


« Ответ #9 : 08-06-2010 12:11 » 

IE является достаточно сложным COM-объектом, на который можно навешать собственные обработчики, предварительно зарегистрировав их в системе. скорее всего, я бы сделал это только для IE, а использование других браузеров с этой софтиной запретил регламентом Улыбаюсь
Записан

zubr
Гость
« Ответ #10 : 08-06-2010 12:19 » 

Okkkks, посмотри здесь:
https://forum.shelek.ru/index.php/topic,21038.0.html - подключение к открытому IE
https://forum.shelek.ru/index.php/topic,15600.0.html - назначение событий html-элементам
так же полезно будет посмотреть этот пример:
http://www.codeproject.com/KB/shell/iehelper.aspx
Все вышеуказанное только для IE
Записан
Okkkks
Помогающий

by
Offline Offline

« Ответ #11 : 08-06-2010 12:57 » new

Спасибо огромное =)) Очень помогли =))
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines