вівторок, 15 червня 2010 р.

Виведення назви вікна, яке зараз знаходиться зверху (~активного)

Ось код для того, аби назва того вікна, що зверху вибивалась в полі Edit1:

unit Unit1;

interface

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

type
TForm1 = class(TForm)
Timer1: TTimer;
Edit1: TEdit;
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);
var
buffer,captions: Pchar;
Wnd, Len: Cardinal;
begin
Wnd := GetForegroundWindow;
if Wnd <> 0 then
begin
Len := SendMessage(Wnd, WM_GETTEXTLENGTH, 0, 0) + 1;
GetMem(Captions, Len);
try
if SendMessage(Wnd, WM_GETTEXT, Len, Integer(Captions)) <> 0 then
Edit1.Text:= captions;
finally
FreeMem(Captions)
end
end
end;

end.

Обєкти: Timer1, Edit1.

Немає коментарів:

Дописати коментар