Форум: "Сети";
Текущий архив: 2004.09.26;
Скачать: [xml.tar.bz2];
ВнизКак сгенерить 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;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.036 c