Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Pastehtml + Link Läßt Sich Nicht Entfernen (https://www.delphipraxis.net/48032-pastehtml-link-laesst-sich-nicht-entfernen.html)

horst 19. Jun 2005 19:00


Pastehtml + Link Läßt Sich Nicht Entfernen
 
Hallo...

ich brauche nochmal eure Hilfe.
Ich füge ein Bild mit Link (zur größeren Ansicht des Bildes) so zum editierbar gemachten Webbrowser hinzu:
Delphi-Quellcode:
procedure TForm1.Button11Click(Sender: TObject);
var
  HTMLDocument2Ifc: IHTMLDocument2;
  HTMLSelectionObjectIfc: IHTMLSelectionObject;
  HTMLTxtRangeIfc: IHTMLTxtRange;
begin
  HTMLDocument2Ifc := WebBrowser1.Document as IHTMLDocument2;
  HTMLSelectionObjectIfc := HTMLDocument2Ifc.selection;
  if HTMLSelectionObjectIfc.type_ = 'Control' then HTMLSelectionObjectIfc.Clear;
  HTMLTxtRangeIfc := HTMLSelectionObjectIfc.createRange as IHTMLTxtRange;
HTMLTxtRangeIfc.pasteHTML('[url="file:///C:/CMS1/Data/pix/' + 'gr' + edit1.text + '"][img]file:///C:/CMS/1Data/pixklein/' + 'kl' + edit1.text + '[/img][/url]');
end;
soweit sogut...

Dannach speicher ich den Inhalt meines Webbrowser als Datei.
Wenn ich meine Seite dann wieder bearbeite und dieses Bild entferne, ist das Bild zwar weg, der Link (zur größeren Ansicht des Bildes) entfernt sich dadurch aber nicht.
Sowas bleibt dann stehen.


Wenn ich dann wieder ein neues Bild mit Link hinzufüge und wieder entferne, stehen 2 Links in der Datei usw.
Wer weiß Rat?

Liebe Grüße
Horst

marabu 19. Jun 2005 22:01

Re: Pastehtml + Link Läßt Sich Nicht Entfernen
 
Hallo Horst,

schade, dass du nicht sagst, wie du das Bild entfernst. Vermutlich hast du nur das Bild selektiert, hättest aber die Selektion auf das umgebende Element <A> erweitern müssen.

Grüße vom marabu

horst 19. Jun 2005 22:12

Re: Pastehtml + Link Läßt Sich Nicht Entfernen
 
Hallo...
ich entferne das Bild einfach mit der "Entfernentaste"
Mittlerweile mache ich es so:
Delphi-Quellcode:
procedure TForm1.Button16Click(Sender: TObject);
var
  HTMLDocument2Ifc: IHTMLDocument2;
begin
  HTMLDocument2Ifc := WebBrowser1.Document as IHTMLDocument2;
  HTMLDocument2Ifc.execCommand('Justifyleft', false, '0');
  try
    WebBrowser1.ExecWB(OLECMDID_DELETE, OLECMDEXECOPT_PROMPTUSER);
  except
  end;
  HTMLDocument2Ifc.execCommand('Justifyleft', false, '0');
  try
    WebBrowser1.ExecWB(OLECMDID_DELETE, OLECMDEXECOPT_PROMPTUSER);
  except
  end;
end;
Das klappt, ist aber bestimmt nicht richtig so.
Wie würdest du das machen?

Grüße
Horst

marabu 20. Jun 2005 11:46

Re: Pastehtml + Link Läßt Sich Nicht Entfernen
 
Du selektierst das IMG über die Tastatur und löschst es mit der Taste Entf und der von dir gezeigte Code entfernt dann noch die anchor tags?
Du könntest statt dessen einfach nochmal die Taste Entf verwenden. Da der TextRange leer ist und auch kein Control enthält, könntest du für diesen Fall grundsätzlich das parentElement löschen.

marabu

horst 20. Jun 2005 12:01

Re: Pastehtml + Link Läßt Sich Nicht Entfernen
 
Hallo...danke für deine Antwort.
Das funktioniert irgendwie nicht immer.
Wie muß ich das mit Delphi machen?
Grüße
Horst


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:06 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz