![]() |
Anchor
Hi
Weiß jemand zufällig warum das nicht funktioniert?
Delphi-Quellcode:
Bzw. wie sowas "Normalerweise" geregelt wird?
WebBrowser1.OleObject.Document.execCommand('createanchor', true);
Grüße Horst |
Re: Anchor
Was soll durch "createanchor" denn passieren?
MfG Pr0g |
Re: Anchor
es soll ein anker erstellt werden
<a name="mein_anker"></a> mit
Delphi-Quellcode:
kann ich z.b. einen link erstellen.
WebBrowser1.OleObject.Document.execCommand('CreateLink', true)
das praktische daran ist das ich einen markierten link auch auslesen kann und in dem üblichen dialog angezeigt bekomme. |
Re: Anchor
Ich glaube einen Anker kann an so nicht setzten, aber vielleicht findest du in der Liste was:
![]() |
Re: Anchor
Momentan mache ich es so:
Delphi-Quellcode:
Das klappt auch, nur bekomme ich den Anker nirgens zu sehen, obwohl er da ist, mein Problem ist dann das ich den Anker nicht auslesen kann, so wie es mit
procedure TForm6.Button1Click(Sender: TObject);
var HTMLDocument2Ifc: IHTMLDocument2; HTMLSelectionObjectIfc: IHTMLSelectionObject; HTMLTxtRangeIfc: IHTMLTxtRange; begin HTMLDocument2Ifc := Form1.WebBrowser1.Document as IHTMLDocument2; HTMLSelectionObjectIfc := HTMLDocument2Ifc.selection; HTMLTxtRangeIfc := HTMLSelectionObjectIfc.createRange as IHTMLTxtRange; HTMLTxtRangeIfc.pasteHTML('<a name="' + edit10.text + '" ></a>'); end;
Delphi-Quellcode:
klappt.
WebBrowser1.OleObject.Document.execCommand('CreateLink', true)
|
Re: Anchor
Mich würde mal interessieren was du machst, denn eine Seite im Webbrowser zu ändern ist ja doch etwas umständlich.
|
Re: Anchor
Hmmm...wie würdest du das tun?
|
Re: Anchor
Versuch mal damit Anchors auslesen:
Delphi-Quellcode:
showmessage(WebBrowser1.OleObject.Document.anchors[0].name);
|
Re: Anchor
Zitat:
|
Re: Anchor
Vielen Dank, leider bekomme ich eine Fehlermeldung:
Zitat:
|
Re: Anchor
@Pr0g
ich will tatsächlich Html-Dateien im Webbrowser bearbeiten, direkt im Html-Code ist zu ümständlich, sollen doch Menschen damit arbeiten die überhaupt keine Ahnung davon haben. |
Re: Anchor
Damit bekomme ich die Anker ausgelesen, es wäre schön wenn ich die Anker auch sichtbar machen könnte, so wie es mit Dreamweaver oder Frontpage möglich ist, bzw. wenn ich einen markiere, den Namen in einem Edit angezeigt bekommen könnte, aber dazu müßte ich den Anker erstmal sehen.
Delphi-Quellcode:
Procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;
const pDisp: IDispatch; var URL: OleVariant); var anchors, a: Variant; i: integer; begin ListBox1.Clear; anchors := Webbrowser1.OleObject.document.anchors; i := 0; while i < anchors.length do begin ListBox2.Items.Add('id = "' + anchors.item(i).id + '" | name = "' + anchors.item(i).name + '"'); inc(i); end; a := anchors.namedItem('1'); if (VarType(a) = varDispatch) and (IDispatch(a) = nil) then MessageDlg('Niestety nie ma takiej kotwicy', mtError, [mbOK], 0); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz