Entwickler-Ecke

Delphi Tutorials - Mini Webbrowser Demo


toms - Mo 14.03.05 11:18
Titel: Mini Webbrowser Demo
Hallo,

Habe mal ein kleines Demo fuer den TWebbrowser zusammengestellt.

Download siehe Anlage: "Mini Webbrowser Demo 1.3.3 by toms"
(Wahlweise kann man auch den TEmbeddedWB oder TMozillaBrowser "noch buggy"
nehmen)

Es wird folgendes demonstriert:

:arrow: :arrow: :arrow: :arrow: :arrow:

und vieles mehr.

Viel Spass....

MSHTML


maximus - Mo 14.03.05 12:20

Moin Toms.

Es tut mir ja leid. Aber deine programm hat hier in der Unit-sektion nix zu suchen. Hier geht es darum nützliche, wiederverwendbare units einer breiten masse zugänglich zu machen. Dein programm ist allerdings nur eine tech-demo und könnte bessere zu den tutorials oder open-source.

Das hier ist auch deutlich:
Tino hat folgendes geschrieben:
Diese Sparte ist für alle die gedacht die mit Delphi nützliche Units programmiert haben und diese nun in einer großen Community veröffentlichen wollen.

Delphi-Forum.de stellt Dir deshalb diese Sparte zur Verfügung. Folgende Punkte solltest Du bitte beachten:

    Geltende Copyrightbestimmungen dürfen nicht verletzt werden

    Die Unit muss im Betrag selbst eingefügt werden und mit Delphi-Tags umschlossen werden

    Beschreib die Unit in einigen Sätzen damit der Leser weiß um was es geht

    Die Unit muss dokumentiert sein

...



PS: Glückwunsch zu der D2005 pro...hab auch eine :)


toms - Mo 14.03.05 13:30

user profile iconmaximus hat folgendes geschrieben:
Moin Toms.

Hier geht es darum nützliche, wiederverwendbare units einer breiten masse zugänglich zu machen


Das ist es genau.

Zitat:

Dein programm ist allerdings nur eine tech-demo und könnte bessere zu den tutorials oder open-source


Es ist ja unter open-Source :? :?:


maximus - Mo 14.03.05 13:48

user profile icontoms hat folgendes geschrieben:
...
Es ist ja unter open-Source :? :?:


Ja, aber Open Source Units ...IMO ist das einfach ein programm und nur weil dies auch units besitzt, ist es nicht automatisch die richtige sparte. Davon abgesehen musst du die unit in deinem beitrag listen, wie es verlangt wird.

Versteh mich bitte nicht falsch. Ich will dich nicht ärgern, nur ich habe es mit durchgesetzt, dass diese sparte eingerichtet wird (*flüster* war auch überhaupt meine idee) und ich will nicht, dass diese zu einer egal-was-ich-hier-programmiert-habe-wird-schon-passen-Sparte verkommt :) Diese sparte ist für nützlich units, die man einfach einbindet und ohne änderungen nutzen kann. In deinem Projekt befinden sich nur formular units und du nennst es ja selbst Demo.


raziel - Mo 14.03.05 14:01

Hi,

ich habe dieses Topic zu den Tutorials geschoben aus folgenden Gründen:

Nichtsdestotrotz ist das eine wirklich gute Sache, v.a. weil doch recht häufig eben in diesem Beispielprogramm demonstrierte Dinge häufig gefragt werden. :)

Gruß,
raziel

P.S.: Diskussionen wohin das gehört bitte per PN weiterführen ;)


toms - Mo 14.03.05 14:39

Mir ist eigentlich völlig egal, wohin mein Beitrag verschoben wird,
unter welche Kategorie.
Der Mod. soll das kommentarlos machen und fertig.

Wenn ihr nun soviel Kommentar zum Programm schreiben würdet wie
ihr bereits geschrieben habt, wäre ich vollends zufrieden. :D


maximus - Mo 14.03.05 15:24

user profile icontoms hat folgendes geschrieben:
...
Wenn ihr nun soviel Kommentar zum Programm schreiben würdet wie
ihr bereits geschrieben habt, wäre ich vollends zufrieden. :D



8) Bei mir läuft es gut und finde es super (als demo *g*). Kann leider nicht viel zu sagen, da es perfekt funktioniert. Und so ist es aber auch immer, je besser ein programm funktioniert, desto wenige gibt es zu schreiben und wird man schreiben.

*daumen*


Quanda - Mi 16.03.05 19:48

SO ich lad mir das teil mal runter ,
mal sehen ob es mir hilft ... :)


toms - Do 17.03.05 11:23

user profile iconQuanda hat folgendes geschrieben:
SO ich lad mir das teil mal runter ,
mal sehen ob es mir hilft ... :)


Es hat in der Zwischenzeit ein Update gegeben mit einigen
interessanten Zusätzen.


toms - Mo 28.03.05 06:58

:arrow: Neues Update: Gesamter Quelltext überarbeitet, Auslagerung in externe Unit, Quelltext besser dokumentiert und vieles mehr.


toms - Sa 02.04.05 10:38

Habe das Demo noch ein wenig verbessert.

Koennt ihr mal testeb, ob es unter D5, D4, D3 läuft?
(falls nicht, wo gibt es Fehler?)

Danke!


matze.de - Sa 02.04.05 11:11

Ich hab nen paar bugs gefunden,



mfg matze


toms - Fr 08.04.05 11:16

user profile iconmatze.de hat folgendes geschrieben:
Ich hab nen paar bugs gefunden,

    -Wenn ich im ersten browsertab meine homepage öffne wirft er mir nen skriptfehler aus, wenn ich diese aber in nem zweiten tab öffne nicht.
    -Wenn man die Schriftgröße erst im MainMenü zb auf Groß stellt und dann per STRG+Mausrad ändert bekommt man im MainMenue 2 Häkchen bei schriftgröße.
    -Im neuen Tab klappt der EventLog nicht.

mfg matze


Hi matze,

Der Skripfehler wird angezeigt, wenn die Silent Eigenschaft auf True ist.
Habe sie nun auf False gesetzt.
Der Event Log funktioniert jetzt auch in neuen Tabs.


Zitat:
-Wenn man die Schriftgröße erst im MainMenü zb auf Groß stellt und dann per STRG+Mausrad ändert bekommt man im MainMenue 2 Häkchen bei schriftgröße.


Fehler wurde behoben.


:!: Koennt ihr bitte mal testen, ob es unter D5, D4, D3 kompiliert?
(falls nicht, wo gibt es Fehler?)


Lannes - Fr 08.04.05 12:33

Hallo,

unter D3 kann man das so nicht testen, da bei D3 die dfm noch im binären Format vorliegen müssen.
Du hast das mit D6 erstellt. oder?
Gibt es bei D6 die Möglichkeit die dfm im binären Format zu speichern?
Oder gibt es irgendwo einen Konverter?

Kompilierungsversuch ohne dfm, dann fehlt die in uses eingebundene "AppEvnts".

//Edit : letzten Satz hinzugefügt.


Lannes - Fr 08.04.05 13:36

Hallo,

hab einen Konverter gefunden :)
>>programmersheaven.com : Delphi Form to Text file converter [http://www.programmersheaven.com/search/download.asp?FileID=16278]
:!: mit Quellcode :!:

jetzt nun, Test mit D3


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
Eigenschaft existiert nicht :
OldCreateOrder
Panel1.DesigSize
btnSearch.Anchors
btnGo.Anchors
Label8.Anchors
edUrl.Anchors
edSearch.Anchors
Panel12.AutoSize
CoolBarMainIcons.BandMaximize
ToolBar1.Transparent
PageControl.BiDiMode
PageControl.ParentBiDiMode
PageControl.TabIndex
TabSheet7.ImageIndex
PageControInfos.TabIndex
TabSheet2.ImageIndex
TabSheet11.ImageIndex
TabSheet3.ImageIndex
TabSheet4.ImageIndex
TabSheet5.ImageIndex
TabSheet6.ImageIndex
TabObjectView.ImageIndex
Panel6.AutoSize
Panel6.DesignSize
SpeedButtonScrollButtom.Anchors
PageControl1.TabIndex
Panel2.Anchors
GroupBox1.DesignSize
btnSearchAndHighlight.Anchors
edSearchAndHighlight.Anchors
PnlElementInfo1.DesignSize
PnlElementInfo.DesignSize
Pnlhandle.Anchors
Pnlhandle.DesignSize
edElementTag.Anchors
edElementTag.BevelInner
edElementTag.BevelOuter
Panel1.Anchors
Panel1.DesignSize
edElementId.Anchors
edElementId.BevelInner
edElementId.BevelOuter
Panel5.Anchors
Panel5.DesignSize
edElementinnerHTML.Anchors
... noch mehr, aber die gleichen Eigenschaften

Klasse TApplicationEvents nicht gefunden

>>> Form wird angezeigt
F9 : Fehlermeldungen
Feld frmMyBrowser.ApplicationEvents1 hat keine entsprechende Komponente, Deklaration entfernen? >> [Ja]
Die Methode WebBrowser1BeforeNavigate2, referenziert durch WebBrowser1.OnBeforeNavigate2, hat eine inkompatible Parameterliste. Referenz entfernen? >> [Ja]
Die Methode WebBrowser1NavigateComplete2, referenziert durch WebBrowser1.OnNavigateComplete2, hat eine inkompatible Parameterliste. Referenz entfernen? >> [Ja]
Die Methode WebBrowser1BeforeNavigate2, referenziert durch WebBrowser1.OnBeforeNavigate2, hat eine inkompatible Parameterliste. Referenz entfernen? >> [Ja]

Unit1.pas(18): Datei nicht gefunden: 'AppEvents.dcu'.
Unit1.pas(19): Datei nicht gefunden: 'ImgList.dcu'.
Unit1.pas(20): Datei nicht gefunden: 'SHDocVw.dcu'.
Unit1.pas(20): Datei nicht gefunden: 'WBFuncs.dcu'.
Unit1.pas(21): Datei nicht gefunden: 'HistoryMenu.dcu'.
Unit1.pas(21): Datei nicht gefunden: 'FavMenu.dcu'.

dann geht es weiter mit ...Undefinierter Bezeichner...


Ist glaube ich ein Haufen Arbeit das nach D3 umzuschreiben. Wäre aber für viele D3-Nutzer nicht schlecht. :wink:


toms - Fr 08.04.05 13:54

Bei D3 fehlen also Die Eigenschaften Anchors, DesignSize, ImageIndex der TTabsheets usw
Die Komponente TApplicationEvents ist auch nicht vorhanden. Die Ereignisse müsste man halt via wndproc
abfangen.

Zitat:
Die Methode WebBrowser1BeforeNavigate2, referenziert durch WebBrowser1.OnBeforeNavigate2, hat eine inkompatible Parameterliste. Referenz entfernen?
usw...


Kommt daher, dass bei D3 ein alter IE Wrapper verwendet wird.
Nach Importieren der ActiveX Komponenten sollten die Fehler verschwinden.

Zitat:
Unit1.pas(20): Datei nicht gefunden: 'SHDocVw.dcu'.

Unit muss man zuerst importieren

Zitat:

Unit1.pas(19): Datei nicht gefunden: 'ImgList.dcu'.


Gibt's bei D3 keine ImgList.pas / dcu?


Zitat:

Unit1.pas(20): Datei nicht gefunden: 'WBFuncs.dcu'.
Unit1.pas(21): Datei nicht gefunden: 'HistoryMenu.dcu'.
Unit1.pas(21): Datei nicht gefunden: 'FavMenu.dcu'.


Units befinden sich im Unterverzeichnis units


Lannes - Fr 08.04.05 21:57

user profile icontoms hat folgendes geschrieben:

Die Komponente TApplicationEvents ist auch nicht vorhanden. Die Ereignisse müsste man halt via wndproc abfangen.
Was müsste ich alles abfangen?

user profile icontoms hat folgendes geschrieben:
Kommt daher, dass bei D3 ein alter IE Wrapper verwendet wird.
Nach Importieren der ActiveX Komponenten sollten die Fehler verschwinden.
hatte ich importiert, oder meinst Du andere als
Microsoft Internet Controls (1.1)?

user profile icontoms hat folgendes geschrieben:
Unit1.pas(20): Datei nicht gefunden: 'SHDocVw.dcu'. Unit muss man zuerst importieren
woher?

user profile icontoms hat folgendes geschrieben:
Unit1.pas(19): Datei nicht gefunden: 'ImgList.dcu'.
Gibt's bei D3 keine ImgList.pas / dcu?
Nein

Ps.: Die MSHTML_TLB bekomme ich bei mir nicht importiert :( , aber gehört nicht in diesen Thread.


toms - Mo 18.04.05 22:25

Wenn du die Komponente TApplicationEvents nicht hast, kannst du jene von den Jedis verwenden oder
halt die Events über die wndproc abfangen.


Gerhard_S - Fr 12.12.08 13:22

Der Link zu http://www.crystalline.ch/downloads/MiniWebbrowserDemo.zip ist tot. Gibt es die Demo noch an anderer Stelle? Bei Google habe ich nichts gefunden.


toms - Fr 12.12.08 20:32

user profile iconGerhard_S hat folgendes geschrieben Zum zitierten Posting springen:
Der Link zu http://www.crystalline.ch/downloads/MiniWebbrowserDemo.zip ist tot. Gibt es die Demo noch an anderer Stelle? Bei Google habe ich nichts gefunden.


Hallo, ich habe die Datei im ersten Beitrag angehängt.


Gerhard_S - Sa 13.12.08 20:20

Zitat:
Hallo, ich habe die Datei im ersten Beitrag angehängt.

Danke.