Html şeklinde 5 adet katalog var.Bu kataloglar kendi içinde sayfalara bölünmüş.Ben bu html'deki resimleri res dosyasına gömdüm.
Delphi içerisinde webbrowser1.navigate ile ana katalogları açtırırken webbrowser'ın navigate2 olayında res dosyasından hangi katalogsa resmini çağırıyorum.Delphi içinden res dosyasına gömülen resimler webbrowser'da açılıyor.Çıkıştada siliniyor.
Ana katalog'un alt katalog numarasına tıklayıp veya ileri deyip alt kataloglara geçmek için linklere tıkladığımda alt sayfadaki resimler res dosyasından yüklenmiyor.
Webbrowser içindeki html sayfasında linke tıklandığında alt katalogdaki resimleri nasıl çağırırım.webbrowser'ın hangi olayını kullanmam lazım.
Kod: Tümünü seç
procedure Tform2.LoadJPEGfromEXE;
var
MyJPG : TJPEGImage;
ResStream : TResourceStream;
son1,baslangic,bitis,y,si:integer;
cresim,sresim:string;
ri:word;
begin
for si:=1 to (sbitis-sbaslangic) do
begin
if (si>9) and (si<100) then
begin
sresim:='\image0'+inttostr(si)+'.jpg';
end;
if si<10 then
begin
sresim:='\image00'+inttostr(si)+'.jpg';
end;
if si>99 then
begin
sresim:='\image'+inttostr(si)+'.jpg';
end;
deletefile(eddir.Text+son2+sresim);
end;
sbaslangic:=baslangic;
sbitis:=bitis+1;
sbf1:=sbaslangic;
sbitisf1:=sbitis;
son1:=pos('.',lburl.Caption);
son2:=copy(lburl.Caption,1,son1-1);
son2:=son2+'_files';
jpgresim:=son2;
if son2='debriyajbilyasi-1_files' then
begin
baslangic:=1;
bitis:=4;
end;
if son2='debriyajbilyasi-2_files' then
begin
baslangic:=5;
bitis:=11;
end;
if son2='debriyajbilyasi-3_files' then
begin
baslangic:=12;
bitis:=17;
end;
MyJPG := TJPEGImage.Create;
y:=1;
try
for ri:=baslangic to bitis do
begin
ResStream := TResourceStream.CreateFromID(HInstance, ri, RT_RCDATA);
MyJPG.LoadFromStream(ResStream); // What!? Yes, that easy!
if y<10 then
begin
cresim:='image00'+inttostr(y)+'.jpg';
end;
if (y>9) and (y<100) then
begin
cresim:='image0'+inttostr(y)+'.jpg';
end;
if y>99 then
begin
cresim:='image'+inttostr(y)+'.jpg';
end;
y:=y+1;
end;
finally
MyJPG.Free;
ResStream.Free;
end;
end;
procedure TForm2.WebBrowser1BeforeNavigate2(Sender: TObject;
const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
Headers: OleVariant; var Cancel: WordBool);
begin
loadjpegfromexe;
end;