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

Вниз

Как сгенерить html-страницу и поместить ее в TWebBrowser?   Найти похожие ветки 

 
Лев Ландау   (2004-07-19 02:48) [0]

Вопрос такай:
=============
"
у меня есть некая строковая переменная, которая содержит html-код      страницы, как сгенерить ее в окошке TWebBrowser-а ?
"
з.ы. огромное спасибо всем ответившим!


 
Rouse_ ©   (2004-07-19 09:31) [1]

http://www.swissdelphicenter.ch/en/showcode.php?id=2148


 
Rouse_ ©   (2004-07-19 09:35) [2]

Вот еще как вариант:

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, OleCtrls, SHDocVw, mshtml, ActiveX, StdCtrls, Menus, ExtCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   Button2: TButton;
   PopupMenu1: TPopupMenu;
   gsdfg1: TMenuItem;
   wtwertwert1: TMenuItem;
   wertwert1: TMenuItem;
   wertwe1: TMenuItem;
   wertwe2: TMenuItem;
   Button3: TButton;
   Button4: TButton;
   WebBrowser1: TWebBrowser;
   Memo1: TMemo;
   procedure Button1Click(Sender: TObject);
   procedure FormClose(Sender: TObject; var Action: TCloseAction);
   procedure Button2Click(Sender: TObject);
   procedure Button3Click(Sender: TObject);
   procedure Button4Click(Sender: TObject);
   procedure FormCreate(Sender: TObject);
   procedure WebBrowser1BeforeNavigate2(Sender: TObject;
     const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
     Headers: OleVariant; var Cancel: WordBool);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;
 Document: IHtmlDocument2;
 V: Variant;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 V[0] :="<strong><a href="Новая строка"> Новая</a> срока</strong><br>";
 Document.Writeln(PSafeArray(TVarData(v).VArray));
 WebBrowser1.OleObject.Document.parentWindow.scroll(0,10000000);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 Document.Close;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 Document.close;
 V[0] :="<BODY><strong><font color="#8000FF">Текст очищен</font></strong><br></BODY></HTML>";
 Document.Writeln(PSafeArray(TVarData(v).VArray));
end;

procedure TForm1.Button3Click(Sender: TObject);
var
 f:TextFile;
 tmp, tmp1:String;
 col:char;
begin
 AssignFile(f,"C:\NewZool\Logs\#Main.log");
 Reset(f);

 while not EOF(f) do
 begin
   Readln(f,tmp);
   if tmp <> "" then
   begin
   col := tmp[1];
   delete(tmp,1,1);
   tmp := StringReplace(tmp,"<","<",[rfReplaceAll]);
   tmp := StringReplace(tmp,";)","<IMG src="C:\Programm\Pictures\Smiles\icon_wink.gif">",[rfReplaceAll]);
   tmp := StringReplace(tmp,":)","<IMG src="C:\Programm\Pictures\Smiles\icon_biggrin.gif">",[rfReplaceAll]);
   tmp := StringReplace(tmp,":(","<IMG src="C:\Programm\Pictures\Smiles\icon_cry.gif">",[rfReplaceAll]);
   tmp := StringReplace(tmp,"(","",[rfReplaceAll]);
   tmp := StringReplace(tmp,")","",[rfReplaceAll]);

   case col of
     "&": tmp1 :=tmp1+"<strong>"+tmp+"</strong><br>";
     "#": tmp1 :=tmp1+"<strong><font color="#8000FF">"+tmp+"</font></strong><br>";
     "*": tmp1 :=tmp1+"<strong><font color="#8FA0FF">"+tmp+"</font></strong><br>";
   end;
 end
 else
   tmp := tmp+ " <br>";
 end;
 V[0] := tmp1;
 Document.Writeln(PSafeArray(TVarData(v).VArray));
 //V[0] := "";
 WebBrowser1.OleObject.Document.parentWindow.scroll(0,10000000);
 CloseFile(f);
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
 V[0] :="<IMG src="C:\Programm\Pictures\Smiles\icon_cry.gif">";
 Document.Writeln(PSafeArray(TVarData(v).VArray));
 WebBrowser1.OleObject.Document.parentWindow.scroll(0,10000000);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 WebBrowser1.Navigate("about:blank");
 while WebBrowser1.Document = nil do
   Application.ProcessMessages;
 Document := WebBrowser1.Document as IHtmlDocument2;
 V := VarArrayCreate([0, 0], varVariant);
 V[0] :="<HTML><HEAD><TITLE></TITLE><style>a,a:visited{text-decoration: none;"+
 "FONT-WEIGHT: bold; color: #003388;}a:hover{color: #0066FF}</style></HEAD>"+
   "<BODY><strong><font face="MS Sans Serif"><font size=1.5><font color="#FF00FF">Test</font></strong><br></BODY></HTML>";
 Document.Writeln(PSafeArray(TVarData(v).VArray));
end;

procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject;
 const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
 Headers: OleVariant; var Cancel: WordBool);
var
 S: String;
begin
 if url <> "about:blank" then
 begin
   Cancel := True;
   Url := StringReplace(url, "%20", " ", [rfIgnoreCase]);
   S:= Copy(url, Length(Url) - 10, Length(Url));
   if S <> "about:blank" then
     Memo1.Text := Memo1.Text + Copy(url, 12, Length(url))
   else
     Memo1.Text := Memo1.Text + Copy(url, 12, Length(url) - 24);
 end;
end;

end.


 
Sky   (2004-07-19 12:18) [3]

Выгружаешь содержимое переменной в temp"овый текстовый файл и грузишь его в TWebBrowser. После файл убиваешь (или оставляешь как кеш).


 
Polevi ©   (2004-07-19 12:26) [4]

procedure LoadHtml(html:string)
var
 ss:TStringStream;
begin
 ss:=TStringStream.Create(html);
 try
   (WebBrowser1.Document as IPersistStreamInit).Load(TStreamAdapter.Create(ss));
 finally
   ss.Free;
 end;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.036 c
1-1094940046
Davinchi
2004-09-12 02:00
2004.09.26
Как получить Hendle DLL


9-1083384939
dimodim
2004-05-01 08:15
2004.09.26
Помогите с моделями на Жлсцене


14-1094318828
zokzok
2004-09-04 21:27
2004.09.26
Access vs Delphi


4-1092071733
ElRaki
2004-08-09 21:15
2004.09.26
ScreenShot экрана


1-1094968915
Zeqfreed
2004-09-12 10:01
2004.09.26
TJPEGImage проблемы с потоком





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский