DeepEdit!

Программирование баз данных на Oracle, техническая документация, литература, статьи и публикации

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

TWebBrowser


ActiveX-компонент. Предоставляет доступ к стандартной библиотеке MS Internet Explorer (компонент WebBrowser). Реализован на основе интерфейса IWebBrowser2 (функциональность) и IOLECommandTarget (дополнительные команды, начиная с IE 5.0). 
Многие свойства и методы TWebBrowser не используются при создании приложений Delphi и не поддерживаются этой средой, но документированы в интерфейсе.
Требует для работы наличие на компьютере пользователя MS IE 4.0 и выше (библиотека shdocvw.dll).
Модуль: ShDocVw.pas.
Страница VCL: Internet.

Иерархия:
TObject → TPersistent → TComponent → TControl → TWinControl → TOleControl → TWebBrowser


Свойства:


В TWebBrowser:

AddressBar
Application
Busy
Container
ControlInterface
DefaultInterface
Document
FullName
FullScreen
HWND
LocationName
LocationURL
MenuBar
Name
Offline
Parent
Path
ReadyState
RegisterAsBrowser
RegisterAsDropTarget
Resizable
Silent
StatusBar
StatusText
TheaterMode
ToolBar
TopLevelContainer
Type_
Visible

От TOLEControl:

DefaultDispatch
OleObject
PerPropBrowsing

От TWinControl:

AlignDisabled
Brush
ClientOrigin
ClientRect
ControlCount
Controls
DockClientCount
DockClients
DoubleBuffered
Handle
ParentWindow
Showing
TabOrder
TabStop
VisibleDockClientCount

От TControl:

Action
Align
Anchors
BiDiMode
BoundsRect
ClientHeight
ClientWidth
Constraints
ControlState
ControlStyle
Cursor
DockOrientation
DragCursor
DragMode
Enabled
Floating
FloatingDockSiteClass
Height
HelpContext
HelpKeyword
HelpType
Hint
HostDockSite
Left
LRDockWidth
ParentShowHint
PopupMenu
ShowHint
TBDockHeight
Top
UndockHeight
UndockWidth
Width
WindowProc

От TComponent:

ComObject
ComponentCount
ComponentIndex
Components
ComponentState
ComponentStyle
DesignInfo
Owner
Tag
VCLComObject

       


События:


В TWebBrowser:

OnBeforeNavigate2
OnCommandStateChange
OnDocumentComplete
OnDownloadBegin
OnDownloadComplete
OnFullScreen
OnMenuBar
OnNavigateComplete2
OnNewWindow2
OnProgressChange
OnPropertyChange
OnQuit
OnStatusBar
OnStatusTextChange
OnTheaterMode
OnTitleChange
OnToolBar
OnVisible


От TWinControl:

OnEnter
OnExit

От TControl:

OnDragDrop
OnDragOver
OnEndDrag
OnStartDrag



Методы:


В TWebBrowser:

ClientToWindow
ExecWB
GetProperty
GoBack
GoForward
GoHome
GoSearch
Navigate
Navigate2
PutProperty
QueryStatusWB
Quit
Refresh
Refresh2
ShowBrowserBar
Stop

От TOLEControl:

BrowseProperties
Create
DefaultHandler
Destroy
DoObjectVerb
GetEnumPropDesc
GetHelpContext
GetObjectVerbs
GetPropDisplayString
GetPropDisplayStrings
IsCustomProperty
IsPropPageProperty
SetBounds
SetPropDisplayString
ShowAboutBox

От TWinControl:

Broadcast
CanFocus
ContainsControl
ControlAtPos
CreateParented
CreateParentedControl
DisableAlign
DockDrop
EnableAlign
FindChildControl
FlipChildren
Focused
GetTabOrderList
HandleAllocated
HandleNeeded
InsertControl
Invalidate
PaintTo
Realign
RemoveControl
Repaint
ScaleBy
ScrollBy
SetFocus
Update
UpdateControlState

От TControl:

BeginDrag
BringToFront
ClientToParent
ClientToScreen
Dock
DragDrop
Dragging
DrawTextBiDiModeFlags
DrawTextBiDiModeFlagsReadingOnly
EndDrag
GetControlsAlignment
GetParentComponent
GetTextBuf
GetTextLen
HasParent
Hide
InitiateAction
IsRightToLeft
ManualDock
ManualFloat
MouseWheelHandler
ParentToClient
Perform
ReplaceDockedControl
ScreenToClient
SendToBack
SetTextBuf
Show
UseRightToLeftAlignment
UseRightToLeftReading
UseRightToLeftScrollBar

От TComponent:

BeforeDestruction
DestroyComponents
Destroying
ExecuteAction
FindComponent
FreeNotification
FreeOnRelease
GetNamePath
InsertComponent
IsImplementorOf
ReferenceInterface
RemoveComponent
RemoveFreeNotification
SafeCallException
SetSubComponent
UpdateAction


От TPersistent:

Assign

От TObject:

AfterConstruction
ClassInfo
ClassName
ClassNameIs
ClassParent
ClassType
CleanupInstance
Dispatch
FieldAddress
Free
FreeInstance
GetInterface
GetInterfaceEntry
GetInterfaceTable
InheritsFrom
InitInstance
InstanceSize
MethodAddress
MethodName
NewInstance



Свойства TWebBrowser
AddressBar (published)
property AddressBar: WordBool;
Не используется.
Application (read only)
property Application: IDispatch;
Предоставляет доступ к интерфейсу автоматизации программы, управляющей WebBrowser, или, если это невозможно, к интерфейсу управления WebBrowser.
Busy (read only)
property Busy: WordBool;
Определяет, занят ли WebBrowser в текущий момент, или нет.
WebBrowser понимает начало и конец загрузки документа или html-страницы как два независимые события. Если WebBrowser находится в середине загрузки, то Busy = true, и загрузку можно остановить методом Stop.
Container (read only)
property Container: IDispatch;
Предоставляет доступ к интерфейсу автоматизации контейнера (владельца), содержащего WebBrowser.
Если владелец отсутствует, то Container = nil.
ControlInterface (read only)
property  ControlInterface: IWebBrowser2;
Предоставляет доступ к управляющему интерфейсу данного компонента WebBrowser, контролирующему его свойства, методы и события.
DefaultInterface (read only)
property  DefaultInterface: IWebBrowser2;
Дает доступ к интерфейсу «по умолчанию» данного компонента WebBrowser. Чаще всего повторяет свойство ControlInterface.
Document (read only)
property Document: IDispatch;
Предоставляет доступ к интерфейсу активного в данный момент документа. Дает возможность манипулировать содержимым html-документа с использованием COM-модели. 
Если активного документа нет, то Document = nil. Поэтому перед использованием свойства необходимо загрузить html-страницу методами Navigate или Navigate2.
Подробнее об интерфейсе html-документа можно узнать в The Document Object Section Of Microsoft’s Dynamic HTML Reference.
FullName (read only)
property FullName: WideString;
Указывает полное имя исполняемого файла приложения, содержащего в себе TWebBrowser.
FullScreen (published)
property FullScreen: WordBool;
Не используется.
HWND (read only)
property HWND: Integer;
Предоставляет доступ к дескриптору TWebBrowser, используемому элементами управления браузера через свойство Handle.
LocationName (read only)
property LocationName: WideString;
Содержит краткое имя текущего URL или файла, совместимое с UI.
Если отображается html-документ из сети, то свойство содержит заголовок этого документа. Если же источник – локальная сеть или диск, то в свойстве содержится полный UNC-путь к файлу.
LocationURL (read only)
property LocationURL: WideString;
Идентифицирует URL или полный путь к текущему документу или файлу.
MenuBar (published)
property MenuBar: WordBool;
Не используется.
Name (read only)
property Name: WideString;
Содержит имя исполняеого файла приложения, содержащего TwebBrowser.
Offline (published)
property Offline: WordBool;
Режим просмотра страниц из локального кэша браузера.
Parent (read only)
property Parent: IDispatch;
Предоставляет доступ к интерфейсу автоматизации контейнера-владельца браузера.
Если такого интерфейса нет у контейнера, Parent ссылается на некоторый интерфейс типа ControlInterface.
Свойство TopLevelContainer устанавливает интерфейс контейнера.
Path (read only)
property Path: WideString;
Содержит путь к исполняемому файлу приложения, содержащего TwebBrowser.
ReadyState (read only)
property ReadyState: TOleEnum;
Отображает состояние браузера.
Позволяет контролировать готовность TWebBrowser к к.-л. действиям. Может принимать следующие значения:
Константа
Величина
Описание
READYSTATE_UNINITIALIZED
0
По умолчанию. Не инициализованное управление, не загружены свойства соединения.
READYSTATE_LOADING
1
Загружены свойства соединения.
READYSTATE_LOADED
2
Инициализация завершена, но браузер не интерактивен.
READYSTATE_INTERACTIVE
3
Интерактивность включена, но не загружены данные (документ или фрейм)
READYSTATE_COMPLETE
4
Документ полностью загружен.
RegisterAsBrowser (published)
property RegisterAsBrowser: WordBool;
Зарегистрировать как браузер верхнего уровня.
RegisterAsDropTarget (published)
property RegisterAsDropTarget: WordBool;
Возможность загрузки документа путем перетаскивание в поле браузера. Если RegisterAsDropTarget = false, то перетаскивание не будет иметь результата.
Resizable (published)
property Resizable: WordBool;
Не используется.
Silent (published)
property Silent: WordBool;
Возможность отображения диалоговых окон. 
Позволяет использовать TWebBrowser для отображения диалогов.
StatusBar (published)
property StatusBar: WordBool;
Не используется.
StatusText (published)
property StatusText: WideString;
Не используется.
TheaterMode (published)
property TheaterMode: WordBool;
Не используется.
ToolBar (published)
property ToolBar: Integer;
Не используется.
TopLevelContainer (read only)
property TopLevelContainer: WordBool;
Показывает отсутствие владельца с интерфейсом автоматизации. 
Если TopLevelContainer = true, то Container = nil, и Parent ссылается на собственный интерфейс TWebBrowser. Если TopLevelContainer = false, то Container и Parent ссылаются на интерфейс владельца TWebBrowser.
Type_ (read only)
property Type_: WideString;
Возвращает тип объекта документа для доступа к документному интерфейсу.
Visible (published)
property Visible: WordBool;
Управление видимостью TWebBrowser.

События TWebBrowser
OnBeforeNavigate2 (published)
property OnBeforeNavigate2: TWebBrowserBeforeNavigate2;
Происходит непосредственно перед переходом браузера на новый документ. 
Используется для изменения, отмены или управления навигацией, либо проведения некоторых предварительных операций перед загрузкой документа.
Тип TWebBrowserBeforeNavigate2 описан в модуле SHDocVw.pas следующим образом:
type TWebBrowserBeforeNavigate2 = procedure (Sender: TObject; const pDisp: IDispatch; var URL: OleVariant; var Flags: OleVariant; var TargetFrameName: OleVariant; var PostData: OleVariant; var Headers: OleVariant; var Cancel: WordBool) of object;
Sender – TWebBrowser, который пытается начать загрузку нового документа и при этом вызвал событие OnBeforeNavigate2.
pDisp – интерфейс браузера.
URL – адрес загружаемого документа или файла.
Flags – не используется.
TargetFrameName – имя фрейма, в который загружается документ, либо null.
PostData – данные, отсылаемые серверу по протоколу http.
Headers – заголовки, направляемые по протоколу http, например, сценарии, типы данных и т.п.
Cancel – определяет, будет ли отменена операция загрузки документа.
OnCommandStateChange (published)
property OnCommandStateChange: TWebBrowserCommandStateChange;
Отслеживает изменения состояния управляющих методов, что помогает изменять некоторые зависящие от этих методов параметры.
Тип TWebBrowserCommandStateChange описан в модуле SHDocVw.pas следующим образом:
type TWebBrowserCommandStateChange = procedure (Sender: TObject; Command: Integer; Enable: WordBool) of object;
Sender – TWebBrowser, чьи возможности изменились.
Command – что именно изменилось. Может принимать следующие значения:
Константа
Величина
Описание
CSC_UPDATECOMMANDS        
-1
Любое изменение, не указанное в других значениях.
CSC_NAVIGATEFORWARD        
1
Изменение метода GoForward в списке истории.
CSC_NAVIGATEBACK        
2
Изменение метода GoBack в списке истории.

Enable – включает использование значений Command = 1 или Command = 2.
OnDocumentComplete (published)
property OnDocumentComplete: TWebBrowserDocumentComplete;
Возникает при завершении загрузки документа, т.е. при ReadyState = READYSTATE_COMPLETE. Если документ имеет несколько фреймов, то событие наступит после полной загрузки данных во все фреймы этого документа. 
Позволяет обнаружить изменение URL в процессе загрузки.
Тип TWebBrowserDocumentComplete описан в модуле SHDocVw.pas следующим образом:
type TWebBrowserDocumentComplete = procedure (Sender: TObject; const pDisp: IDispatch; var URL: OleVariant) of object;
Sender – TWebBrowser, в котором загружался документ.
pDisp – интерфейс верхнего фрейма.
URL – URL загруженного документа, который может отличаться от исходного URL, например, из-за переадресации запроса сервером или ресурсом.
OnDownloadBegin (published)
property OnDownloadBegin: TNotifyEvent;
Возникает в начале загрузки документа после установления связи с ресурсом в сети. Формально – следующее событие после OnBeforeNavigate2.
В обработчике рекомендуется начать работу с компонентами, показывающими процесс загрузки (в т.ч. с анимацией и TProgressBar).
OnDownloadComplete (published)
property OnDownloadComplete: TNotifyEvent;
Возникает при окончании загрузки документа, ее прерывания пользователем или ошибке.
OnFullScreen (published)
property OnFullScreen: TWebBrowserOnFullScreen;
Не используется.
OnMenuBar (published)
property OnMenuBar: TWebBrowserOnMenuBar;
Не используется.
OnNavigateComplete2 (published)
property OnNavigateComplete2: TWebBrowserNavigateComplete2;
Происходит при успешном завершении подключения к ресурсу. 
Используется для загрузки по определенному сценарию. При этом необходимо, чтобы хотя бы часть документа была загружена.
Тип TWebBrowserNavigateComplete2 описан в модуле SHDocVw.pas следующим образом:
type TWebBrowserNavigateComplete2 = procedure (Sender: TObject; const pDisp: IDispatch; var URL: OleVariant) of object;
Sender – TWebBrowser, в котором произошло событие.
pDisp – интерфейс браузера.
URL – URL ресурса, который может отличаться от исходного.
OnNewWindow2 (published)
property OnNewWindow2: TWebBrowserNewWindow2;
Происходит при вызове нового окна браузера.
Позволяет перехватывать и обрабатывать загрузку документа в новом окне.
Тип TWebBrowserNewWindow2 описан в модуле SHDocVw.pas следующим образом:
type TWebBrowserNewWindow2 = procedure (Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool) of object;
Sender – TWebBrowser, вызывающий новое окно.
ppDisp – интерфейс вызываемого экземпляра TWebBrowser.
Cancel – определяет, будет ли отменена операция загрузки документа.
OnProgressChange (published)
property OnProgressChange: TWebBrowserProgressChange;
Возникает при обновлении информации о состоянии загрузки документа.
Используется для визуализации процесса загрузки.
Тип TWebBrowserProgressChange описан в модуле SHDocVw.pas следующим образом:
type TWebBrowserProgressChange = procedure (Sender: TObject; Progress: Integer; ProgressMax: Integer) of object;
Sender – TWebBrowser, в котором идет загрузка документа.
Progress – показывает, какая часть документа уже загружена (в диапазоне от 0 до ProgressMax); если загрузка завершена, то Progress = -1.
ProgressMax – значение, соответствующее полному размеру документа.
Чтобы рассчитать значение Progress в процентах, нужно, если оно не равно -1, умножить его на 100 и разделить на значение ProgressMax.
OnPropertyChange (published)
property OnPropertyChange: TWebBrowserPropertyChange;
Не используется.
OnQuit (published)
property OnQuit: TNotifyEvent;
Не используется.
OnStatusBar (published)
property OnStatusBar: TWebBrowserOnStatusBar;
Не используется.
OnStatusTextChange (published)
property OnStatusTextChange: TWebBrowserStatusTextChange;
Не используется.
OnTheaterMode (published)
property OnTheaterMode: TWebBrowserOnTheaterMode;
Не используется.
OnTitleChange (published)
property OnTitleChange: TWebBrowserTitleChange;
Происходит при расположении или изменениии заголовка документа.
Позволяет контролировать изменения заголовка html-страницы.
Тип TWebBrowserTitleChange описан в модуле SHDocVw.pas следующим образом:
type TWebBrowserTitleChange = procedure (Sender: TObject; const Text: WideString) of object;
Sender – TWebBrowser с загружаемым документом.
Text – новый заголовок.
OnToolBar (published)
property OnToolBar: TWebBrowserOnToolBar;
Не используется.
OnVisible (published)
property OnVisible: TWebBrowserOnVisible;
Происходит при скрытии и визуализации TWebBrowser.
Тип TWebBrowserrOnVisible описан в модуле SHDocVw.pas следующим образом:
type TWebBrowserOnVisible = procedure (Sender: TObject; Visible: WordBool) of object;
Sender – TWebBrowser, видимость которого изменяется.
Visible – индикатор видимости.
Методы TWebBrowser
ClientToWindow
procedure ClientToWindow(var pcx: SYSINT; var pcy: SYSINT);
Не используется.
ExecWB
procedure ExecWB(cmdID: OLECMDID; cmdexecopt: OLECMDEXECOPT); overload;
procedure ExecWB(cmdID: OLECMDID; cmdexecopt: OLECMDEXECOPT; var pvaIn: OleVariant); overload;
procedure ExecWB(cmdID: OLECMDID; cmdexecopt: OLECMDEXECOPT; var pvaIn: OleVariant; var pvaOut: OleVariant); overload;
Выполнение указанной команды.
Метод ExecWB использует интерфейс IOleCommandTarget для управления TWebBrowser, но не поддерживает все заявленные команды. Более полную информацию можно получить в документации интерфейса (Microsoft Corp.). Для точного установления факта поддержки нужно использовать метод QueryStatusWB.
cmdID – идентификатор команды:
type OLECMDID = TOleEnum;
Команда
Описание
OLECMDID_OPEN
Открыть
OLECMDID_NEW
Новый…
OLECMDID_SAVE
Сохранить
OLECMDID_SAVEAS
Сохранить как…
OLECMDID_SAVECOPYAS
Сохранить копию как…
OLECMDID_PRINT
Печать
OLECMDID_PRINTPREVIEW
Предварительный просмотр
OLECMDID_PAGESETUP
Параметры страницы
OLECMDID_SPELL
Кодировка
OLECMDID_PROPERTIES
Свойства
OLECMDID_CUT
Вырезать
OLECMDID_COPY
Копировать
OLECMDID_PASTE
Вставить
OLECMDID_PASTESPECIAL
Специальная вставка
OLECMDID_UNDO
Отменить
OLECMDID_REDO
Вернуть отмененное
OLECMDID_SELECTALL
Выделить все
OLECMDID_CLEARSELECTION
Очистить выделенное
OLECMDID_ZOOM
Размер шрифта
OLECMDID_GETZOOMRANGE
Получить размер шрифта
OLECMDID_UPDATECOMMANDS
Обновить команды
OLECMDID_REFRESH
Обновить документ
OLECMDID_STOP
Остановить выполнение текущей операции
OLECMDID_HIDETOOLBARS
Скрыть панель настройки
OLECMDID_SETPROGRESSMAX
Установить предел отсчета Progress
OLECMDID_SETPROGRESSPOS
Установить позицию Progress
OLECMDID_SETPROGRESSTEXT
Ввести текст Progress
OLECMDID_SETTITLE
Установить заголовок
OLECMDID_SETDOWNLOADSTATE
Установить состояние загрузки
OLECMDID_STOPDOWNLOAD
Остановить загрузку
OLECMDID_FIND
Поиск
OLECMDID_ONTOOLBARACTIVATED
Активация панели инструментов
OLECMDID_DELETE
Удалить
OLECMDID_HTTPEQUIV

OLECMDID_ENABLE_INTERACTION
Включить интерактивность
OLECMDID_HTTPEQUIV_DONE

OLECMDID_ONUNLOAD

OLECMDID_PROPERTYBAG2

OLECMDID_PREREFRESH
Предобновление
cmdexecopt – идентификатор варианта выполнения команды:
type OLECMDEXECOPT = TOleEnum;
Константа
Значение
Описание
OLECMDEXECOPT_DODEFAULT
0
По умолчанию, без изменений метода
OLECMDEXECOPT_PROMPTUSER
1
Запрос параметров у пользователя
OLECMDEXECOPT_DONTPROMPTUSER
2
Не запрашивать параметры
OLECMDEXECOPT_SHOWHELP
3
Показать справку о команде
pvaIn – входящие данные или EmptyParam.
pvaOut – выходящие данные или EmptyParam.
GetProperty
function  GetProperty(const Property_: WideString): OleVariant;
Не используется.
GoBack
procedure GoBack;
Осуществляет перемещение по списку посещенных страниц в обратном направлении с загрузкой документа в браузер. Если список пуст или достигнута его первая запись, действие не имеет результата.
GoForward
procedure GoForward;
Осуществляет перемещение по списку посещенных страниц в прямом направлении с загрузкой документа в браузер. Если список пуст или достигнута его последняя запись, действие не имеет результата.
GoHome
procedure GoHome;
Загружает текущую домашнюю страницу из ключа реестра HKEY_CURRENT _USER\Software\Microsoft\Internet Explorer\Main с именем Startpage.
GoSearch
procedure GoSearch;
Загружает текущую домашнюю страницу из ключа реестра HKEY_CURRENT _USER\Software\Microsoft\Internet Explorer\Main с именем Searchpage.
Navigate
procedure Navigate(const URL: WideString); overload;
procedure Navigate(const URL: WideString; var Flags: OleVariant); overload;
procedure Navigate(const URL: WideString; var Flags: OleVariant; var TargetFrameName: OleVariant); overload;
procedure Navigate(const URL: WideString; var Flags: OleVariant; var TargetFrameName: OleVariant; var PostData: OleVariant); overload;
procedure Navigate(const URL: WideString; var Flags: OleVariant; var TargetFrameName: OleVariant; var PostData: OleVariant; var Headers: OleVariant); overload;
Осуществляет связь с ресурсом и загрузку данных по указанному в параметре URL пути или URL.
Flags – устанавливают параметры загрузки и соединения:
Константа
Значение
Описание
navOpenInNewWindow        
1
Открыть в новом окне
navNoHistory
2
Не записывать в список посещенных страниц
navNoReadFromCache        
4
Не читать из кэша
navNoWriteToCache        
8
Не заносить в кэш (во временные файлы)
navAllowAutosearch        
16
При ошибке пути или URL использовать автопоиск  с установленной в реестре страницы Searchpage.
TargetFrameName – имя фрейма, в котором должен быть выведен документ, или null, если нет имени.
PostData – отправляемые на сервер данные по протоколу http.
Headers – заголовки (сценарии, типы данных и т.п.), отправляемые на сервер по протоколу http.
Navigate2
procedure Navigate2(const URL: WideString); overload;
procedure Navigate2(const URL: WideString; var Flags: OleVariant); overload;
procedure Navigate2(const URL: WideString; var Flags: OleVariant; var TargetFrameName: OleVariant); overload;
procedure Navigate2(const URL: WideString; var Flags: OleVariant; var TargetFrameName: OleVariant; var PostData: OleVariant); overload;
procedure Navigate2(const URL: WideString; var Flags: OleVariant; var TargetFrameName: OleVariant; var PostData: OleVariant; var Headers: OleVariant); overload;
Осуществляет связь с ресурсом и загрузку данных по указанному в параметре URL пути, URL или PIDL. Отличие от метода Navigate состоит именно в том, что осуществляется доступ к ресурсам, даже если их адрес не может быть выражен в виде URL.
Flags – устанавливают параметры загрузки и соединения:
Константа
Значение
Описание
navOpenInNewWindow        
1
Открыть в новом окне
navNoHistory
2
Не записывать в список посещенных страниц
navNoReadFromCache        
4
Не читать из кэша
navNoWriteToCache        
8
Не заносить в кэш (во временные файлы)
navAllowAutosearch        
16
При ошибке пути или URL использовать автопоиск  с установленной в реестре страницы Searchpage.
TargetFrameName – имя фрейма, в котором должен быть выведен документ, или null, если нет имени.
PostData – отправляемые на сервер данные по протоколу http.
Headers – заголовки (сценарии, типы данных и т.п.), отправляемые на сервер по протоколу http.
PutProperty
procedure PutProperty(const Property_: WideString; vtValue: OleVariant);
Не используется.
QueryStatusWB
function  QueryStatusWB(cmdID: OLECMDID): OLECMDF;
Возвращает сообщение о поддержке команды cmdID в методе ExecWB.
Сообщение имеет тип:
type OLECMDF = TOleEnum;
Константа
Значение
Описание
OLECMDF_SUPPORTED        
1
TWebBrowser поддерживает команду, но она может быть отключена.
OLECMDF_ENABLED        
2
Команда подключена корректно
OLECMDF_LATCHED        
4
Команда – переключатель, включенный в настоящий момент.
OLECMDF_NINCHED        
8
Не используется корректно
OLECMDF_INVISIBLE        
16
Не используется корректно
OLECMDF_DEFHIDEONCTXTMENU
32
Не используется корректно
Quit
procedure Quit;
Не используется.
Refresh
procedure Refresh;
Обновляет данные текущей активной страницы.
Refresh2
procedure Refresh2; overload;
procedure Refresh2(var Level: OleVariant); overload;
Выполняет перезагрузку документа с заданием параметров обновления информации в параметре Level:
Константа
Значение
Описание
REFRESH_NORMAL        
0
«Легкая» перезагрузка без возвращения кэшируемой копии документа с сервера. Иногда может вызвать проблемы соединения с сервером.
REFRESH_IFEXPIRED        
1
То же, но обновление только в случае изменения содержимого страницы.
REFRESH_CONTINUE
2
Только для внутреннего использования.
REFRESH_COMPLETELY
3
Полная перезагрузка типа Refresh (по умолчанию)
ShowBrowserBar
procedure ShowBrowserBar(var pvaClsid: OleVariant);
procedure ShowBrowserBar(var pvaClsid: OleVariant; var pvarShow: OleVariant);
procedure ShowBrowserBar(var pvaClsid: OleVariant; var pvarShow: OleVariant; var pvarSize: OleVariant);
Не используется.
Stop
procedure Stop;
Останов текущей операции (в т.ч. навигации, загрузки, показа анимации, видео, воспроизведения звука и т.п.).
Использование TWebBrowser
Перехват загрузки документа с запрещенными параметрами
Перехват загрузки необходим в случае, если необходимо отфильтровать загружаемую информацию или направить ее в какое-либо иное окно. Например, нужно разрешить брать информацию из локальной сети, но не допустить ее загрузку из Интернета, или разрешить загрузку html-страниц в окно браузера, а вызываемые по ссылке рисунки загружать в окно TImage.
При этом возникает несколько задач:
Нужно разделить загрузку по командам оболочки приложения (меню, кнопки и др. события с собственными обработчиками) от загрузки по ссылкам html-документа, особенно от автоматической загрузки всплывающих окон или автообновления страниц и т.п.
Нужно обработать варианты загрузки по ссылкам, инициализированные пользователем, и варианты, которые могут произойти при работе с документом без намеренного вызова загрузки пользователем (выполнение скриптов и т.п.).
Нужно разделить загружаемые документы по типам данных и направить их в соответствующие окна визуализации.
При возникновении запрещенных ситуаций нужно о них сообщить пользователю или зафиксировать в отчете.
В этом случае создается индикатор indURL, который следит, как инициируется загрузка информации. Если загрузка инициируется командой меню или кнопки с собственным обработчиком, то ставим в этом обработчике indURL = 1, если же загрузка идет по ссылке с web-страницы или выполнением скрипта, то indURL = 0. Далее обрабатывается событие OnBeforeNavigate2 браузера с использованием его параметров Cancel и URL
procedure TMainForm.WebBrowser1BeforeNavigate2(Sender: TObject; const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostDataHeaders: OleVariant; var Cancel: WordBool);
begin
  if indURL 0 then begin // Загрузка по ссылке с html-страницы  
    if (URL = {допустимые URL}) then begin
      {Действия при допустимой загрузке}
    end;
    if (URL = {URL рисунков и перенаправляемых файлов}) then begin
      {Действия при загрузке файла}
      Cancel := true; // Отмена загрузки в окно браузера
    end;
    if (URL = {запрещенные URL}) then begin
      {Действия и сообщения при запрете загрузки}
      Cancel := true; // Отмена загрузки
    end;
  end
  else begin // Загрузка по команде из приложения
    indURL := 0; // Сброс индикатора команды
    {Действия при загрузке по команде}
  end;
end;
После обработки загрузки нужно сбросить флажок indURL в 0, чтобы далее правильно отслеживать загрузку документов.
























 


аккумулятор для моторолы купить . Кирпич строительный М-125 от 7р: керамический кирпич цена. . Дипломная работа на заказ срочно Москва







jAntivirus