Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.24;
Скачать: CL | DM;

Вниз

Параметры WebBrowser   Найти похожие ветки 

 
Keni ©   (2006-07-27 20:32) [0]

На форме есть компонетн WebBrowser, который я использую для получения HTML-кода.
HTML-код получить не составляет труда.
но вот загрузка страницы завершается, только после того, как будут загружены все рисунки(а это долго). Так вот, мне надо запретить загрузку изображений только для моего WebBrowser"а.
вопрос: как это сделать?

спасибо, зарание.


 
anton773 ©   (2006-07-27 21:29) [1]

Недавно нашел на безкрайних просторах интернета вот такой код(пока не проверял).Попробуй,вдруг получится :)) как отключить, включить отображение рисунков в TWebBrowser?  

unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, SHDocVw, OleCtrls, ActiveX, StdCtrls;
type
TimgWebBrowser = class(TWebBrowser, IDispatch)
private
  FImageEnabled: boolean;
   procedure SetImageEnabled(const Value: boolean);
protected
  function IDispatch.Invoke = Invoke;
  function Invoke(DispID: Integer; const IID: TGUID; LocaleID: Integer;
    Flags: Word; var Params; VarResult, ExcepInfo, ArgErr: Pointer): HResult;
    stdcall;
public
  constructor Create(AOwner: TComponent); override;
published
  property ImageEnabled: boolean read FImageEnabled write SetImageEnabled default true;
end;
type
TForm1 = class(TForm)
   Button1: TButton;
  procedure FormCreate(Sender: TObject);
  procedure FormDestroy(Sender: TObject);
   procedure Button1Click(Sender: TObject);
private
  { Private declarations }
  imgWebBrowser: TimgWebBrowser;
public
  { Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
{ TimgWebBrowser }
constructor TimgWebBrowser.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FImageEnabled := true;
end;
function TimgWebBrowser.Invoke(DispID: Integer; const IID: TGUID;
LocaleID: Integer; Flags: Word; var Params; VarResult, ExcepInfo,
ArgErr: Pointer): HResult;
const
DISPID_AMBIENT_DLCONTROL = -5512;
DLCTL_DLIMAGES = $00000010;
begin
if (Flags and DISPATCH_PROPERTYGET <> 0) and (VarResult <> nil) then
begin
  Result := S_OK;
  case DispID of
    DISPID_AMBIENT_DLCONTROL:
      if FImageEnabled then
        PVariant(VarResult)^ := Integer(DLCTL_DLIMAGES)
      else
        PVariant(VarResult)^ := Integer(not DLCTL_DLIMAGES);
  else
    Result := DISP_E_MEMBERNOTFOUND;
  end;
end else
  result := inherited invoke(dispid, iid, localeid, flags, params, varresult,
    ExcepInfo, argerr);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
imgWebBrowser := TimgWebBrowser.Create(self);
with imgWebBrowser do begin
  Align := alclient;
  TControl(imgWebBrowser).Parent := form1;
  ImageEnabled := false; // Это тут.
  Navigate("http://delphimaster.ru");
end;
Button1.BringToFront;
Button1.Caption:="Enbl/Dsbl";
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
imgWebBrowser.Free;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
 imgWebBrowser.ImageEnabled:=not imgWebBrowser.ImageEnabled;
end;
procedure TimgWebBrowser.SetImageEnabled(const Value: boolean);
var
 path:OleVariant;
begin
if (assigned(Document)) then begin
 FImageEnabled := Value;
 path:=OleObject.document.location;
 RecreateWnd;
 Navigate(path);
end;
end;
end.


 
anton773 ©   (2006-07-27 21:31) [2]

Недавно нашел на безкрайних просторах интернета вот такой код(пока не проверял).Попробуй,вдруг получится :)) как отключить, включить отображение рисунков в TWebBrowser?  

unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, SHDocVw, OleCtrls, ActiveX, StdCtrls;
type
TimgWebBrowser = class(TWebBrowser, IDispatch)
private
  FImageEnabled: boolean;
   procedure SetImageEnabled(const Value: boolean);
protected
  function IDispatch.Invoke = Invoke;
  function Invoke(DispID: Integer; const IID: TGUID; LocaleID: Integer;
    Flags: Word; var Params; VarResult, ExcepInfo, ArgErr: Pointer): HResult;
    stdcall;
public
  constructor Create(AOwner: TComponent); override;
published
  property ImageEnabled: boolean read FImageEnabled write SetImageEnabled default true;
end;
type
TForm1 = class(TForm)
   Button1: TButton;
  procedure FormCreate(Sender: TObject);
  procedure FormDestroy(Sender: TObject);
   procedure Button1Click(Sender: TObject);
private
  { Private declarations }
  imgWebBrowser: TimgWebBrowser;
public
  { Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
{ TimgWebBrowser }
constructor TimgWebBrowser.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FImageEnabled := true;
end;
function TimgWebBrowser.Invoke(DispID: Integer; const IID: TGUID;
LocaleID: Integer; Flags: Word; var Params; VarResult, ExcepInfo,
ArgErr: Pointer): HResult;
const
DISPID_AMBIENT_DLCONTROL = -5512;
DLCTL_DLIMAGES = $00000010;
begin
if (Flags and DISPATCH_PROPERTYGET <> 0) and (VarResult <> nil) then
begin
  Result := S_OK;
  case DispID of
    DISPID_AMBIENT_DLCONTROL:
      if FImageEnabled then
        PVariant(VarResult)^ := Integer(DLCTL_DLIMAGES)
      else
        PVariant(VarResult)^ := Integer(not DLCTL_DLIMAGES);
  else
    Result := DISP_E_MEMBERNOTFOUND;
  end;
end else
  result := inherited invoke(dispid, iid, localeid, flags, params, varresult,
    ExcepInfo, argerr);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
imgWebBrowser := TimgWebBrowser.Create(self);
with imgWebBrowser do begin
  Align := alclient;
  TControl(imgWebBrowser).Parent := form1;
  ImageEnabled := false; // Это тут.
  Navigate("http://delphimaster.ru");
end;
Button1.BringToFront;
Button1.Caption:="Enbl/Dsbl";
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
imgWebBrowser.Free;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
 imgWebBrowser.ImageEnabled:=not imgWebBrowser.ImageEnabled;
end;
procedure TimgWebBrowser.SetImageEnabled(const Value: boolean);
var
 path:OleVariant;
begin
if (assigned(Document)) then begin
 FImageEnabled := Value;
 path:=OleObject.document.location;
 RecreateWnd;
 Navigate(path);
end;
end;
end.


 
keni ©   (2006-07-28 14:01) [3]

спасибо, попробую щас


 
keni ©   (2006-07-28 16:02) [4]

спасибо, работает



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

Текущий архив: 2006.12.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.055 c
15-1165001808
Колдун
2006-12-01 22:36
2006.12.24
Схожу с ума


15-1165181106
Loginov Dmitry
2006-12-04 00:25
2006.12.24
Win XP SP2 ограничивает размер отправляемых сообщений :(


2-1165230352
IGo
2006-12-04 14:05
2006.12.24
Не отображается Label, пока не загрузится OLE объект


15-1165265831
Kolan
2006-12-04 23:57
2006.12.24
Пишем программы по русски?


6-1154054443
Гриха
2006-07-28 06:40
2006.12.24
Передать файл через сеть