Delphi Tips 
-----------------------------

0214  D1   D2   D3   D4   D5   D6   D7   3.1   95   98    作成: 1999/08/23 西坂良幸 rev 1.2
   B1   B3   B4   B5   B6   B7   NT3   NT4   2K   XP  更新: 1999/08/23 西坂良幸 編集
デスクトップのウィンドウのタイトルとハンドルを取得する


稼働中のウィンドウのタイトルとハンドルを取得するには、
APIのENumWindows関数を使います。
第一パラメータのコールバック関数は、タイトルとハンドル
をどのように処理するかを工夫します。

次の例はListBoxに列挙し、Labelにその数を示します。

function CallBackTest(WH: HWND; LP: LParam): BOOL stdcall;
var
  Buf: array [0..255] of Char;
begin
  // スタイル ビットがセットされているもののみ
  if IsWindowVisible(hwnd) then
    // タイトル バーのテキストをBufにコピー
    if GetWindowText(WH, Buf, 255) <> 0 then
      TListBox(LP).Items.AddObject(Buff, Pointer(hwnd));
  Result := True;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ListBox1.Clear;
  EnumWindows(@CallBackTest, Longint(ListBox1));
  Label1.Caption := IntToStr(ListBox1.Items.Count);
end;

参照: [Delphi-ML:2378] [Delphi-ML:23203] <Windows> <デスクトップ>

[新規作成] [最新の情報に更新]

How To
Lounge
KeyWords


Tips
Delphi
Home
Osamu Takeuchi osamu@big.or.jp