Avatar billede koonz Nybegynder
18. april 2001 - 23:41 Der er 8 kommentarer og
1 løsning

Kopiere tekst fra TWebbrowser

Hvorledes kopierer jeg den makerede tekst i webbrowser - eksembelvis i Clipboard, eller til en string

Jeg synes ikke jeg kan finde en proberty på den, som indeholder den makerede tekst.
Avatar billede nico26 Nybegynder
19. april 2001 - 03:43 #1
ser er ikke nogen property, og du kan heller ikke umiddelbart bruge ctrl+c, men følgende kode virker
(hvis du bruger delphi5 skal SHDocVw_TLB og MSHTML_TLB skiftes ud med SHDocVw og MSHTML)

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, OleCtrls, SHDocVw_TLB;

type
  TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses
  ClipBrd, MSHTML_TLB;

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
  Doc: IHTMLDocument2;
  Sel: IHTMLSelectionObject;
  Txt: IHTMLTxtRange;
begin
  Doc := WebBrowser1.Document as IHTMLDocument2;
  Sel := Doc.selection;
  Txt := Sel.createRange as IHTMLTxtRange;

  ClipBoard.SetTextBuf(PChar(string(Txt.text)));
  ShowMessage(Txt.text);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  WebBrowser1.Navigate(\'c:\\windows\\skrivebord\\junk.html\', EmptyParam,
                      EmptyParam, EmptyParam, EmptyParam);
end;

end.
Avatar billede koonz Nybegynder
19. april 2001 - 19:00 #2
Jeg bruger Delphi5, men når jeg sætter de ting ind i uses, skriver den at .dcu filen mangler
Avatar billede koonz Nybegynder
19. april 2001 - 19:04 #3
Hov - det var ikke det der er problemet - vender lige tilbage
Avatar billede nico26 Nybegynder
19. april 2001 - 20:40 #4
SHDocVw og MSHTML ligger i mappen source\\internet. Hvis du ikke kan få det til at virke kan jeg sende en version til Delphi5
Avatar billede koonz Nybegynder
19. april 2001 - 22:34 #5
Af en eller anden grund får jeg en fejl hvi jeg prøvet at kopiere noget med sort tekst på orange baggrund...

Jeg ved ikke præcist om det er det, men jeg han ihvertfald godt kopiere sort tekst på hvis baggrund...

http://www.seatroutfishing.dk/  - giver fejl ved kopiering

http://opasia.dk/sportsfiskeri/fluebinding/ - herfra kan fint kopieres
Avatar billede koonz Nybegynder
19. april 2001 - 22:39 #6
Følgende funktion er brugt

function TfrmBrowse.fCopyText: String;
var
  Doc: IHTMLDocument2;
  Sel: IHTMLSelectionObject;
  Txt: IHTMLTxtRange;
begin
  Doc := WebBrowser1.Document as IHTMLDocument2;
  Sel := Doc.selection;
  Txt := Sel.createRange as IHTMLTxtRange;
  Result := Txt.text;
end;
Avatar billede nico26 Nybegynder
19. april 2001 - 23:41 #7
jeg tror det har noget at gøre med at siden bruger frames. Hvis du skriver: http://www.seatroutfishing.dk/home.htm, og dermed får den ene frame i fuldt vindue, er der ikke noget problem. Jeg prøver at finde ud af løsning
Avatar billede koonz Nybegynder
19. april 2001 - 23:57 #8
Siføli - den havde jeg ikke tænkt over :-)

Det ville være meget fint hvis du kunne finde en løsning - tænker også lige selv over den
Avatar billede nico26 Nybegynder
20. april 2001 - 04:04 #9
Jeg har fundet noget på msdn der kan bruges - vender tilbage i morgen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester