Avatar billede baxos Nybegynder
22. december 2003 - 23:50 Der er 8 kommentarer og
1 løsning

Hente tekst fra adresse linje DELPHI

Hvordan finder jeg ud af. Hvad der står i iexplorer adresse linje? ( Hvergang der bliver trykket go/enter) ??

// BaXoS
Avatar billede Slettet bruger
23. december 2003 - 00:25 #1
Du kan bruge denne kode til at få fat i adressen i adresse linien:

function GetIEURL: String;
var
  IEHandle, WorkerHandle, BarHandle, URLEditHandle: HWND;
begin
  IEHandle := FindWindow('IEFrame', nil);
  WorkerHandle := FindWindowEx(IEHandle, 0, 'WorkerW', nil);
  BarHandle := FindWindowEx(WorkerHandle, 0, 'ReBarWindow32', nil);
  URLEditHandle := FindWindowEx(BarHandle, 0, 'ComboBoxEx32', nil);

  SetLength( Result, SendMessage(URLEditHandle, WM_GETTEXTLENGTH, 0, 0 )+1);
  SendMessage(URLEditHandle, WM_GETTEXT, Length(Result), integer(Result));
end;

Men ved ikke, hvordan man får den til at reagere når man trykker på go.
Avatar billede baxos Nybegynder
23. december 2003 - 00:36 #2
jeg forsøger mig lidt frem så og venter på lidt flere svar ;D
Avatar billede baxos Nybegynder
23. december 2003 - 14:58 #3
hmm kan det ikke lade sig gøre om at selected fra tegn 1 til 4 ? altså i Adressen
Avatar billede Slettet bruger
23. december 2003 - 15:19 #4
Hvad mener du?? Om det kan lade sig gøre at markere tegn 1 til 4 i adresse linien??
Avatar billede baxos Nybegynder
23. december 2003 - 15:34 #5
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    statusbox1: TGroupBox;
    Label1: TLabel;
    Memo1: TMemo;
    Label2: TLabel;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  url: string;

implementation

{$R *.dfm}
function GetIEURL: String;
var
  IEHandle, WorkerHandle, BarHandle, URLEditHandle: HWND;
begin
  IEHandle := FindWindow('IEFrame', nil);
  WorkerHandle := FindWindowEx(IEHandle, 0, 'WorkerW', nil);
  BarHandle := FindWindowEx(WorkerHandle, 0, 'ReBarWindow32', nil);
  URLEditHandle := FindWindowEx(BarHandle, 0, 'ComboBoxEx32', nil);

  SetLength( Result, SendMessage(URLEditHandle, WM_GETTEXTLENGTH, 0, 0 )+1);
  SendMessage(URLEditHandle, WM_GETTEXT, Length(Result), integer(Result));
end;

procedure CheckTYPE (Sender: TObject);
begin
form1.Memo1.SelStart := 0;
form1.Memo1.SelLength := 4;
form1.Label2.Caption := ' Type : ' + form1.Memo1.SelText;
end;

procedure CheckDOT (Sender: TObject);
begin

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
url := GetIEURL;
memo1.Text := url;
label1.Caption := 'Adresse lige nu : ' + GetIEURL;
statusbox1.Caption := 'IE Status : ';
CheckTYPE(nil);
end;

end.


- Nu finder den starten af adressen men hvordan finder jeg så slutningen altså  .dk / .com .ck .WhatEver
Avatar billede Slettet bruger
23. december 2003 - 15:48 #6
function Get(URL: String): String;
var
  str1, str2: String;
begin
  str1 := Copy(URL, Pos('//',URL)+2, Length(URL)+Pos('//',URL)+1);
  str2 := Copy(str1, 0, Pos('/',str1)-1);
  Result := Copy(str2, LastDelimiter('.',str2), Length(str2)- LastDelimiter('.',str2)+1);
end;

Det skulle virke :)
Avatar billede baxos Nybegynder
23. december 2003 - 19:28 #7
DET VIKER YES YES :P

Smid svar
Avatar billede Slettet bruger
23. december 2003 - 19:30 #8
Svar :)
Avatar billede baxos Nybegynder
23. december 2003 - 19:31 #9
Super!
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

IT-JOB