TIpHtmlPanel: String anzeigen

Für Fehler in Lazarus, um diese von anderen verifizieren zu lassen.
pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: TIpHtmlPanel: String anzeigen

Beitrag von pluto »

du könntest RichView anschauen: http://wiki.lazarus.freepascal.org/index.php/RichView" onclick="window.open(this.href);return false;
Die ist zwar etwas umständlich, müsste aber gehen.
MFG
Michael Springwald

Zandru
Beiträge: 15
Registriert: Fr 28. Aug 2009, 18:01
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.2.4)
CPU-Target: 32Bit

Re: TIpHtmlPanel: String anzeigen

Beitrag von Zandru »

Bin jetzt erstmal beim HtmlPanel geblieben und hab noch ein letztes Problem:
Wenn ich ein Bild aus dem Internet anzeigen will (zB. http://www.example.com/folder/image.jpg" onclick="window.open(this.href);return false;), kommt eine Fehlermeldung: Unable to open file "/folder/image.jpg"
(Fehler bei der URL ist ausgeschlossen)
Auf der Konsole wird folgendes ausgegeben:

Code: Alles auswählen

TApplication.HandleException Unable to open file "/folder/image.jpg"
  Stack trace:
  $0809F458
  $08102E78  TPICTURE__LOADFROMFILE,  line 497 of ./include/picture.inc
  $082C8CD8  TIPFILEDATAPROVIDER__GETIMAGE,  line 381 of ipfilebroker.pas
  $082C843D  TIPCUSTOMHTMLDATAPROVIDER__DOGETIMAGE,  line 222 of ipfilebroker.pas
  $082A7A53  TIPHTML__DOGETIMAGE,  line 7999 of iphtml.pas
  $082B665C  TIPHTMLNODEIMG__LOADIMAGE,  line 13370 of iphtml.pas
  $082B73D2  TIPHTMLNODEIMG__GETDIM,  line 13716 of iphtml.pas
  $082B7688  TIPHTMLNODEIMG__CALCMINMAXWIDTH,  line 13762 of iphtml.pas
  $082ACCCF  TIPHTMLNODEBLOCK__CALCMINMAXQUEUEWIDTH,  line 9867 of iphtml.pas
  $082AD281  TIPHTMLNODEBLOCK__CALCMINMAXWIDTH,  line 9928 of iphtml.pas
  $082BB4F1  TIPHTMLNODEHTML__CALCMINMAXWIDTH,  line 14749 of iphtml.pas
  $082A970D  TIPHTML__GETPAGERECT,  line 8670 of iphtml.pas
  $082C04E2  TIPHTMLINTERNALPANEL__INVALIDATESIZE,  line 16538 of iphtml.pas
  $082C0880  TIPHTMLINTERNALPANEL__SETHTML,  line 16614 of iphtml.pas
  $082C3FCF  TIPHTMLFRAME__SETHTML,  line 17661 of iphtml.pas
  $082C681D  TIPHTMLCUSTOMPANEL__SETHTML,  line 18371 of iphtml.pas
  $080959CA  TFORM1__LOADSTRINGTOPREVIEW,  line 210 of unit1.pas
Kann ich dem Teil irgendwie beibringen, Bilder aus dem Internet zu laden?
Und gibts vielleicht irgendwo im Internet ne gute Anleitung zu dem HtmlPanel? Hab bisher nichts gefunden :(

Benutzeravatar
theo
Beiträge: 10871
Registriert: Mo 11. Sep 2006, 19:01

Re: TIpHtmlPanel: String anzeigen

Beitrag von theo »

Zandru hat geschrieben: Kann ich dem Teil irgendwie beibringen, Bilder aus dem Internet zu laden?
Ich weiss nicht genau, was du bisher gemacht hast, aber das "Teil" hat jedenfalls keine eingebaute Internet Funktionalität.
Da musst du wahrscheinlich schon ziemlich schrauben, bis das geht.

Es sei denn, jemand hat ein Lösung bereit?

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: TIpHtmlPanel: String anzeigen

Beitrag von creed steiger »

naja LOADFROMFILE ... das runterladen kommt halt vorher ;)

curl oder synapse wären Alternativen
synapse als vollständige Pascal Lösung
How To Download And Display Image From WEB Server:
http://www.synapse.ararat.cz/doku.php/p ... tpdownload" onclick="window.open(this.href);return false;
(und bitte nicht den Einwurf das man ja kein Image anzeigen wollte ;) )

curl ist weitverbreitet (wird denkich auch von Google Earth genutzt)
http://curlpas.sourceforge.net/doc/examples.html" onclick="window.open(this.href);return false;
oder im FPC Ordner units/libcurl

Benutzeravatar
theo
Beiträge: 10871
Registriert: Mo 11. Sep 2006, 19:01

Re: TIpHtmlPanel: String anzeigen

Beitrag von theo »

Naja, das downloaden an sich ist wohl das kleinste Problem.
Man braucht aber wahrsch. einen Extra-Parser um die Bilder vorladen zu können.
Dann noch Pfade im HTML Dokument anpassen "../../blah.png" oder "/images/blah.png" etc.
:roll:

Zandru
Beiträge: 15
Registriert: Fr 28. Aug 2009, 18:01
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.2.4)
CPU-Target: 32Bit

Re: TIpHtmlPanel: String anzeigen

Beitrag von Zandru »

geparst wird das ganze eh, von daher wär das jetzt net soo ein großer aufwand... aber n bissle umständlich ists schon.
Gibts irgendwie vergleichbare HTML-Komponenten, die das direkt aus dem inet anzeigen können (und bei denen dann vielleicht auch das unterstreichen geht)?

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: TIpHtmlPanel: String anzeigen

Beitrag von creed steiger »

Komponente wüsste ich nicht.
Du kannst dir mal die Qt Webkit Demo anschauen.
http://users.telenet.be/Jan.Van.hijfte/ ... pcqt4.html" onclick="window.open(this.href);return false;

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: TIpHtmlPanel: String anzeigen

Beitrag von pluto »

(und bei denen dann vielleicht auch das unterstreichen geht)?
Ich habe mir den Soruce-Code von der Komponente angesehen, eigentlich müsste das unterstreichen gehen. z.b. wird <u> unterstützt.
Muss es denn Unbedingt HTML sein ? Muss es platt Form übergreifend sein ? In GTK2 gibt es eine Praktische Komponente die wird auch vom Memo genutzt.
Es ist eine HTML-Ähnliche Komponente würde ich sagen. Mir ist gerade der Namen entfallen.
MFG
Michael Springwald

Zandru
Beiträge: 15
Registriert: Fr 28. Aug 2009, 18:01
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.2.4)
CPU-Target: 32Bit

Re: TIpHtmlPanel: String anzeigen

Beitrag von Zandru »

<u> und <s> tun unter Linux nicht :( (siehe oben)
Es muss Plattformunabhängig sein, bzw zumindest linux und windows (sonst würd ich's in Delphi machen^^)
HTML muss nicht unbedingt sein, wär aber das beste (und vermutlich einfachste).
In ner alten Version von dem betreffenden Programm hatte ich den Internet Explorer eingebunden. Das war einfach und hat wunderbar funktioniert, macht das Prog aber komplett linux-untauglich^^

Naja, ich schau mir eure hinweise morgen mal genauer an ;)

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: TIpHtmlPanel: String anzeigen

Beitrag von pluto »

was hälst du denn von "RichView" ?
http://wiki.lazarus.freepascal.org/index.php/RichView" onclick="window.open(this.href);return false;
MFG
Michael Springwald

Zandru
Beiträge: 15
Registriert: Fr 28. Aug 2009, 18:01
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.2.4)
CPU-Target: 32Bit

Re: TIpHtmlPanel: String anzeigen

Beitrag von Zandru »

pluto hat geschrieben:was hälst du denn von "RichView" ?
http://wiki.lazarus.freepascal.org/index.php/RichView" onclick="window.open(this.href);return false;
Fehler beim installieren... (mit Version 0.5.2.2)
/usr/lib/lazarus/0.9.29/ide/lazarus.pp(1,1) Fatal: Can't find unit lazrichview used by Lazarus

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: TIpHtmlPanel: String anzeigen

Beitrag von pluto »

Du musst den Pfad auch eintragen. unter Compiler Einstellungen
MFG
Michael Springwald

Zandru
Beiträge: 15
Registriert: Fr 28. Aug 2009, 18:01
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.2.4)
CPU-Target: 32Bit

Re: TIpHtmlPanel: String anzeigen

Beitrag von Zandru »

Wo genau? Ich hab /usr/lib/lazarus/0.9.29/components/lazrichview/ (wo sich die lazrichview.pas eben befindet) sowohl bei "Andere Units" als auch bei "Andere Quellen" eingetragen, hat aber beides nichts geholfen :(

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: TIpHtmlPanel: String anzeigen

Beitrag von pluto »

Hast du das unter "Projekt\Compilier Einstellungen" gesetzt oder im "Paket Dialog" ? Also da wo auch der Install Button ist.
MFG
Michael Springwald

Zandru
Beiträge: 15
Registriert: Fr 28. Aug 2009, 18:01
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.2.4)
CPU-Target: 32Bit

Re: TIpHtmlPanel: String anzeigen

Beitrag von Zandru »

beides^^

Antworten