hi,
auch hier im Forum, kamen schon viele Fragen auf, die sich um den TWebBrowser drehten. Dieses tutorial soll keine Grundlagen vermitteln, sondern euch erklären, wie einfach es ist einen eigenen Browser zu schreiben.
Dann gehts mal gleich los: Ihr findet den TWebBrowser bei euch in der Komponenten Sammlung nicht? Dann sag ich euch mal, wie ihr den (installieren) könnt: Komponente ->
ActiveX installieren -> nun erscheint eine Liste, in der die zu verfügung stehenden
ActiveX Komponenten aufgelistet sind. Da wählt ihr nun Microsoft Internet Controls aus, und dann auf installieren.
Nun habt ihr den TWebBrowser installiert. Nun schiebt ihr den Browser auf euer Projekt. Seht sie euch an: Mit dieser Komponente wird es sicherlich super leicht einen (eigenen) Explorer zu schreiben.
Fangen wir jetzt mal mit dem Hauptteil an:
Wir plazieren auf unserer Form den TWebBrowser. Über ihn kommt ein EditFeld und oben eine Reihe von Buttons: Back, Forward, stop, refresh.
Nun folgender Code:
Delphi-Quellcode:
procedure TForm1.Edit1KeyDown(Sender: TObject, var Key: Word; Shift: TshiftState);
begin
if key = VK_RETURN then
begin
WebBrowser1.Navigate(Edit1.text); // Browser öffnet Seite (Edit1.text)
WebBrowser1.SetFocus;
end;
end;
So das war ja einfach, die gute Nachricht: Es wird nicht schwieriger. Hier also die Procedueren, der Knöpfe.
Delphi-Quellcode:
Procedure TForm1.BackBtnClick(Sender: TObject);
begin
WebBrowser1.GoBack; // Der Brwser geht eine Seite zurück
end;
Procedure TForm1.ForwardBtnClick(Sender: TObject);
begin
WebBrowser1.GoForward; // Der Browser geht eine Seite vor
end;
Procedure TForm1.StopBtnClick(Sender: TObject);
begin
WebBrowser1.Stop; // Der Browser beendet das Laden der Seite
end;
Procedure TForm1.RefreshBtnClick(Sender. TObject);
begin
WebBrowser.Refresh; // Der Browser läd die Seite neu
end;
Und fertig ist unser Explorer. Wer kein internet hat, ihn aber trotzdem testen will, der kann ins Edit einfach C: eingeben. Dann ist man nämlich auf seinem Laufwerk C.
-homer-
ps.: Falls Wünsche bestehen, dass ich erkläre, wie man zum Beispiel eine Statusbar einbaut (mit ProgressBar), dann mache ich das gerne