Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.03.2014, 16:05   #1
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
По умолчанию Вместо перехода по ссылке, открытие новой формы в WebBrowser

Здравствуйте,
пожалуйста, подскажите, как можно реализовать открытие новой формы Делфи, по клику на ссылку в ВебБраузере?

Страницы в веббраузер загружаются из локального хранилища:

Код:
WebBrowser1.Navigate( 'file://' + GetCurrentDir + '/about/index2.html');
В то же время на самой веб-странице есть 3 кнопки, одна из них, вида:
Код:
<a href="http://mysite.com" class="skip bordered-button3" ><strong>упражнения</strong></a>
Как сделать так, чтобы по клику на эту ссылку открывалась новая форма? Где-то видел вариант с

Код:
 if (string(webbrowser1.LocationURL) = 'http://mysite.com/') then begin
  form6.show;
Но у меня он не работает.

Может можно каким-то образом, вместо считывания перехода, прочитать класс ссылки(skip bordered-button3) или текст (упражнения), чтобы если клик происходил по такому элементу - открывалась новая форма?
Интересный проект по изучению английского:
Английский в формате путешествия по США

Последний раз редактировалось Dennis777; 20.03.2014 в 17:47.
Dennis777 вне форума Ответить с цитированием
Старый 20.03.2014, 18:56   #2
PaHaNjkee
Delphi 10 Seattle
Пользователь
 
Аватар для PaHaNjkee
 
Регистрация: 01.11.2010
Сообщений: 90
По умолчанию

Код:
if pos('skip bordered-button3',где ищем) <> 0 then begin // если находим
  // действия
end;
PaHaNjkee вне форума Ответить с цитированием
Старый 20.03.2014, 19:00   #3
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Цитата:
Но у меня он не работает.
почему? где это вообще прописываете?
eval вне форума Ответить с цитированием
Старый 20.03.2014, 19:03   #4
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
По умолчанию

прописывал в
procedure TFormWeb.WebBrowser1NavigateComplet e2(ASender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
Интересный проект по изучению английского:
Английский в формате путешествия по США
Dennis777 вне форума Ответить с цитированием
Старый 20.03.2014, 19:05   #5
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

при чем тут комплит? и кстати тут есть параметр с урлом, зачем вам еще в браузер стучаться было?
eval вне форума Ответить с цитированием
Старый 20.03.2014, 19:23   #6
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
По умолчанию

подскажите пожалуйста, куда его можно засунуть тогда?)
Интересный проект по изучению английского:
Английский в формате путешествия по США
Dennis777 вне форума Ответить с цитированием
Старый 20.03.2014, 19:29   #7
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

логично BeforeNavigate
eval вне форума Ответить с цитированием
Старый 20.03.2014, 19:32   #8
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
логично BeforeNavigate
Логично, туда тоже пихал, не работает(
Интересный проект по изучению английского:
Английский в формате путешествия по США
Dennis777 вне форума Ответить с цитированием
Старый 20.03.2014, 19:35   #9
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

а у меня работает
eval вне форума Ответить с цитированием
Старый 20.03.2014, 19:37   #10
Dennis777
Форумчанин
 
Регистрация: 06.11.2009
Сообщений: 203
По умолчанию

Код:
procedure TFormWeb.WebBrowser1BeforeNavigate2(ASender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
if (string(webbrowser1.LocationURL) = 'http://mysite.com/') then begin
  form6.show;
end;

Написание ссылок сравнил - правильное.
Но страница - все равно открывается, форма не всплывает(

Delphi XE - в чем может быть ошибка? Или альтернативный способ решения?

Запарился я с этим веббраузером уже. То фокус нормально не передает, теперь еще фигня с переходом по ссылке(

eoval, но все равно, спасибо за помощь!
Интересный проект по изучению английского:
Английский в формате путешествия по США

Последний раз редактировалось Dennis777; 20.03.2014 в 19:40.
Dennis777 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Закрытие формы по таймеру и открытие новой. mdekalka C# (си шарп) 2 16.01.2013 06:14
OnDblClick в DBGrid и открытие новой формы haker270 БД в Delphi 12 14.11.2012 20:12
процедура перехода по ссылке ВалекFCRK Общие вопросы Delphi 5 12.10.2011 20:38
Подавление перехода по ссылке russian-stalker JavaScript, Ajax 6 01.05.2011 23:53
Открытие новой формы в VB byte916 Помощь студентам 1 04.03.2008 19:10