![]() |
titel eines fenster erhalten
wie kann ich mit hilfe einer hwnd-variable den titel eines fensters erhalten?
|
Re: titel eines fenster erhalten
SendMessage und WM_GETTEXT sollten dir helfen (PSDK und/oder Online-Hilfe).
Chris |
Re: titel eines fenster erhalten
und hier mal ein wenig Source:
Delphi-Quellcode:
function GetText(Wnd: HWND): string;
var textlength: Integer; Text: PChar; begin textlength := SendMessage(Wnd, WM_GETTEXTLENGTH, 0, 0); if textlength = 0 then Result := '' else begin GetMem(Text, textlength + 1); SendMessage(Wnd, WM_GETTEXT, textlength + 1, Integer(Text)); Result := Text; FreeMem(Text); end; end; |
Re: titel eines fenster erhalten
Delphi-Quellcode:
function GetText(Wnd: HWND): string;
var textlength: Integer; Text: PChar; begin textlength := SendMessage(Wnd, WM_GETTEXTLENGTH, 0, 0); if textlength = 0 then Result := '' else begin GetMem(Text, textlength + 1); try SendMessage(Wnd, WM_GETTEXT, textlength + 1, Integer(Text)); Result := Text; finally FreeMem(Text); end; end; end; |
Re: titel eines fenster erhalten
Und zum dritten:
Delphi-Quellcode:
Luckies Variante geht natürlich u.U. und das SetString ist eher kosmetischer Natur. Natürlich geht auch eine normale Zuweisung, solange die Orginal-Systemunits eingebunden sind (für die String-Compilermagic ;))
function GetText(Wnd: HWND): string;
var textlength: Integer; Text: PChar; begin textlength := SendMessage(Wnd, WM_GETTEXTLENGTH, 0, 0); if textlength = 0 then Result := '' else begin GetMem(Text, textlength + 1); // Änderung -> if Assigned(Text) then try SendMessage(Wnd, WM_GETTEXT, textlength + 1, Integer(Text)); // Result := Text; // Änderung -> SetString(Result, Text, lstrlen(Text)); finally FreeMem(Text); end; end; end; |
Re: titel eines fenster erhalten
ok, die sources funzen, thx4help
|
Re: titel eines fenster erhalten
Delphi-Quellcode:
Gruß Hagen
function GetCaption(Wnd: HWnd): String;
begin SetLength(Result, GetWindowTextLength(Wnd)); SetLength(Result, GetWindowText(Wnd, PChar(Result), Length(Result))); end; |
Re: titel eines fenster erhalten
Ich darf zitieren:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz