请教大虾,下面的程序是什么意思,能否帮我解释一下,看不太懂
implementation{$R *.dfm}
Procedure TForm1.BitBtn1Click(Sender:TObject);
Var
  H_window:HWND;
  Text:array[0..255]of char;
begin
  H_window:=GetWindow(Handle,GW_HWNDFIRST);
  While H_window<>0 do
  begin
    if GETWindowText(H_window,@text,255)>0 then
       memo1.Lines.Add(Strpas(@Text));
    H_window:=GetWindow(H_Window,GW_HWNDNEXT);
  end;
end;
end.窗口

解决方案 »

  1.   


    Procedure TForm1.BitBtn1Click(Sender:TObject);
    Var
      H_window:HWND; //句柄类型
      Text:array[0..255]of char;  //文本缓冲区
    begin
      H_window:=GetWindow(Handle,GW_HWNDFIRST);     //获得第一个窗口句柄
      While H_window<>0 do                          //循环至没有窗口
      begin
        if GETWindowText(H_window,@text,255)>0 then //获得窗口文本,如果其长度>0则:
           memo1.Lines.Add(Strpas(@Text));          //加入到Memo中
        H_window:=GetWindow(H_Window,GW_HWNDNEXT);  //获得下一个窗口句柄
      end;
    end;
      

  2.   

    作用我知道的。我是对其中步骤的意思不太懂。能否从
     H_window:=GetWindow(Handle,GW_HWNDFIRST);这一行开始解释一下?比如说GW_HWNDFIRST的意思是什么?
      

  3.   

    作用我知道的。我是对其中步骤的意思不太懂。能否从
     H_window:=GetWindow(Handle,GW_HWNDFIRST);这一行开始解释一下?比如说GW_HWNDFIRST的意思是什么?GW_HWNDFIRST是系统预定义的常量,在WindowsAPI中有很多类似的,根据某参数的取值决定该函数的功能。如上:
    当取GW_HWNDFIRST时,GetWindow获得第一个句柄;
    当取GW_HWNDNEXT时,GetWindow获得下一个窗口句柄
      

  4.   

    作用我知道的。我是对其中步骤的意思不太懂。能否从
     H_window:=GetWindow(Handle,GW_HWNDFIRST);这一行开始解释一下?比如说GW_HWNDFIRST的意思是什么?GW_HWNDFIRST是系统预定义的常量,在WindowsAPI中有很多类似的,根据某参数的取值决定该函数的功能。如上:
    当取GW_HWNDFIRST时,GetWindow获得第一个句柄;
    当取GW_HWNDNEXT时,GetWindow获得下一个窗口句柄