Delphi 窗体函数GetWindowText -获取窗口的标题

GetWindowText函数
函数功能:将指定窗口的标题条文本(如果存在)拷贝到一个缓存区内。如果指定的窗口是一个控件,则拷贝控件的文本。但是,GetWindowText可能无法获取外部应用程序中控件的文本,获取自绘的控件或者是外部的密码编辑框很有可能会失败。
函数原型:Int GetWindowText(HWND hWnd,LPTSTR lpString,Int nMaxCount);
参数:
hWnd:带文本的窗口或控件的句柄。
lpString:指向接收文本的缓冲区的指针。
nMaxCount:指定要保存在缓冲区内的字符的最大个数,其中包含NULL字符。如果文本超过界限,它就被截断。
返回值:
如果函数成功,返回值是拷贝的字符串的字符个数,不包括中断的空字符;如果窗口无标题栏或文本,或标题栏为空,或窗口或控制的句柄无效,则返回值为零。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
//声明:
GetWindowText(
  hWnd: HWND;        {窗口句柄}
  lpString: PChar;   {接收文本的缓冲区的指针}
  nMaxCount: Integer {指定缓冲区大小, 其中包含NULL字符; 如果文本超出,会被被截断}
): Integer;          {返回字符个数, 不包括中断的空字符; 如果标题为空或句柄无效, 则返回零}
 
 
//举例:
var
  arr: array[0..254] of Char;
begin
  GetWindowText(Handle, @arr, SizeOf(arr));
  ShowMessage(arr); {Form1}
end;
 
 
//标题文本个数:
var
  arr: array[0..254] of Char;
  num: Integer;
begin
  num := GetWindowText(Handle, arr, SizeOf(arr));
  ShowMessage(IntToStr(num)); {5}
end;

  

创建时间:2020.01.03

 

posted on   滔Roy  阅读(1839)  评论(0编辑  收藏  举报

编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报

导航

点击右上角即可分享
微信分享提示