![]() |
|
#1
|
|||
|
|||
![]() Здравствуйте ребят. Перелопатил форумы, мозг вымотал себе уже.
Код:
procedure TForm4.FormCreate(Sender: TObject); begin Returning:=GetCurrentdir; WebBrowser2.Navigate(Returning+'.\html\Системная защита приложений MS Office\index.htm'); WebBrowser1.Navigate(Returning+'.\html\Системная защита приложений MS Office\системная защита.html'); end; procedure TForm4.WebBrowser2NewWindow2(ASender: TObject; var ppDisp: IDispatch; var Cancel: WordBool); begin ppDisp := WebBrowser1.DefaultInterface; end; Теперь не программно. В дельфине есть два компонента WebBrowser1 и WebBrowser2. Второй браузер-менюшка. Кликая на которую, менюшка не должна потухнуть и открыть все в одном окне (или закрыться как у меня это бывало). Хотя бы как нибудь Это как бы навигация такая. Иными словами, слева тыкая на меню- передаем во второй браузер. Причем документ уже открыт сам.. Если не так объяснил, могу выложить скрины.. что у меня есть.. Последний раз редактировалось one_v, 21.03.2015 в 20:01. |
#2
|
|||
|
|||
![]() Видимо, тебя интересует событие OnBeforeNavigate2. Там отлавливаешь ссылку, а потом вызываешь Abort, что бы отменить переход.
|
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
one_v (22.03.2015)
|
#3
|
|||
|
|||
![]() Пока не доходит.
Код:
procedure TForm4.WebBrowser2BeforeNavigate2(ASender: TObject; const pDisp: IDispatch; const URL, Flags, TargetFrameName, PostData, Headers: OleVariant; var Cancel: WordBool); begin if Returning='.\html\Системная защита приложений MS Office\index.htm' then begin cancel:=True; WebBrowser1.Navigate(Returning+'.\html\Системная защита приложений MS Office\ системная защита.html'); Так не работает. |
#4
|
|||
|
|||
![]() УРА! Открыл!
![]() ![]() Код:
procedure TForm4.WebBrowser2BeforeNavigate2(ASender: TObject; const pDisp: IDispatch; const URL, Flags, TargetFrameName, PostData, Headers: OleVariant; var Cancel: WordBool); begin if WebBrowser2.ReadyState=4 then begin Cancel:=True; WebBrowser1.Navigate(Returning+'.\html\Системная защита приложений MS Office\системная защита.html'); Но вот якори почему то перестали работать... Открывая в обычном браузере все хорошо, якори работают. в Делфи не тянет. Скорее всего я думаю что нужно как-то сослаться на якорь... WebBrowser1.Navigate(Returning+'.\html\Системная защита приложений MS Office\системная защита.html'+#Название якоря); ................... Но так сыпется, по типам строковый и веброузер... Последний раз редактировалось one_v, 22.03.2015 в 05:24. |