GetWindowText函數
函數功能:將指定窗口的標題條文本(如果存在)拷貝到一個緩存區內。如果指定的窗口是一個控件,則拷貝控件的文本。但是,GetWindowText可能無法獲取外部應用程序中控件的文本,獲取自繪的控件或者是外部的密碼編輯框很有可能會失敗。
函數原型:Int GetWindowText(HWND hWnd,LPTSTR lpString,Int nMaxCount);
參數:
hWnd:帶文本的窗口或控件的句柄。
lpString:指向接收文本的緩沖區的指針。
nMaxCount:指定要保存在緩沖區內的字符的最大個數,其中包含NULL字符。如果文本超過界限,它就被截斷。
返回值:
如果函數成功,返回值是拷貝的字符串的字符個數,不包括中斷的空字符;如果窗口無標題欄或文本,或標題欄為空,或窗口或控制的句柄無效,則返回值為零。
//聲明:
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