u00203.pas

来自「Delphi编程五大妙招源程序」· PAS 代码 · 共 78 行

PAS
78
字号
unit U00203;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Memo1: TMemo;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
    procedure WMNCHitTest(var Msg: TMessage); message WM_NCHITTEST;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}
procedure Delay(S: Integer);
var
  TimeFrom, TimeTo, TimeWait: TDateTime;
  Hour, Min, Sec, MSec: Word;
begin
  TimeFrom := Time;
  while True do
  begin
    TimeTo := Time;
    TimeWait := TimeTo - TimeFrom;
    DecodeTime(TimeWait, Hour, Min, Sec, MSec);
    if Sec >= S then Exit;
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
    Delay(1) ;
end;

procedure TForm1.WMNCHitTest(var Msg: TMessage);
begin
  inherited; // 这样,移动就不可能了...
  Msg.Result := HTCLIENT;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  Close ;
end;


procedure TForm1.Button2Click(Sender: TObject);
var
  hCurrentWindow: LongWord;
  szText: array[0..254] of char;
begin
  hCurrentWindow := GetWindow(Handle, GW_HWNDFIRST);
  while hCurrentWindow <> 0 do
  begin
    if GetWindowText(hCurrentWindow, @szText, 255)>0 then
                                              Memo1.Lines.Add(StrPas(@szText));
    hCurrentWindow:=GetWindow(hCurrentWindow, GW_HWNDNEXT);
  end;
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?