Einzelnen Beitrag anzeigen

Volker Z.

Registriert seit: 4. Dez 2012
Ort: Augsburg, Bayern, Süddeutschland
419 Beiträge
 
Delphi XE4 Ultimate
 
#2

AW: TWebBrowser: Inhaltbereich markieren und drucken???

  Alt 4. Dez 2013, 01:05
Hallo,

leider etwas wenig Information.
Zitat:
[...] wenn ich die Quellcode der Seite kenne und genau weiss, wie der zu markierenden Bereich im Quellcode anfängt und endet [...]
Heißt das Du kennst den Textinhalt der Seite oder hat der Quellcode eine ganz spezielle Struktur (Kommentare o. ä.)?

Wenn Du den Textinhalt der Seite kennst, also z. B.:
Ich lade eine bestimmte Seite in TWebBrowser. Kann ich irgendwie den bestimmten Bereicht des Seiteninhalts markieren, wenn ich die Quellcode der Seite kenne und genau weiss, wie der zu markierenden Bereich im Quellcode anfängt und endet? Ist das überhaupt möglich? Diesen Bereich möchte ich dann drucken, genau so wie im normalen Browser, wenn wir nicht die ganze Seite, sondern nur den markierten Bereich drucken wollen.

und Du möchtest den Teil von "Ich lade eine bestimmte [...]" bis "[..] Ist das überhaupt möglich?" selektieren und drucken, dann ginge das z. B. so:
Delphi-Quellcode:
procedure TForm1.Button1Click (Sender : TObject);
var
  t0, t1 : string;
  r0, r1 : IHTMLTxtRange;
begin
  t0 := 'Ich lade eine bestimmte';
  t1 := 'Diesen Bereich möchte ich dann';
  r0 := ((WebBrowser1.Document as IHTMLDocument2).body as IHTMLBodyElement).createTextRange;
  r1 := ((WebBrowser1.Document as IHTMLDocument2).body as IHTMLBodyElement).createTextRange;
  if r0.findText (t0, 0, 0) and r1.findText (t1, 0, 0) then
    begin
      r0.setEndPoint ('EndToStart', r1);
      r0.moveEnd ('word', -1);
      r0.select;
      WebBrowser1.ExecWB (OLECMDID_PRINT, OLECMDEXECOPT_DODEFAULT)
    end
end;
Sollte Dir den Bereich entsprechend selektieren und den Druckdialog aufrufen.

Wenn Du etwas anderes vor hast, dann musst Du schon noch etwas Info liefern.


Gruß
Volker Zeller
  Mit Zitat antworten Zitat