(4)JVCL之一键获取所有活动窗口的标题与句柄

16 篇文章 3 订阅 ¥69.90 ¥99.00
本文介绍如何利用JVCL库在Delphi中通过EnumWindows函数和EnumWindowsProc回调函数,轻松获取所有活动窗口的标题和句柄。
摘要由CSDN通过智能技术生成

自己用代码也能实现,底层原理就是EnumWindows函数和一个EnumWindowsProc回调函数。

这里JCL帮我们做了下封装,方便以后一键调用。

function EnumWindowsProc(Handle: THandle; LParam: TStrings): Boolean; stdcall;
var
  St: array [0..256] of Char;
  St2: string;
begin
  if Windows.IsWindowVisible(Handle) then
  begin
    GetWindowText(Handle, St, Length(St));
    St2 := St;
    if St2 <> '' then
      TStrings(LParam).AddObject(St2, TObject(Handle));
  end;
  Result := True;
end;

procedure GetVisibleWindows(List: TStrings);
begin
  List.BeginUpdate;
  try
    List.Clear;
    EnumWindows(@EnumWindowsProc, LPARAM(List));
  finally
    List.EndUpdate;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  S : TStringlist;
  i : integer;
begin
  S 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

D-Nolan

请我喝杯咖啡吧,鼓励一下创作!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值