Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Component name
Soulama - Do 04.11.04 15:56
Titel: Component name
Hi,
möchte den Namen eines Component wissen, von dem ich nur den Handle habe ?
hat jemand eine Idee ?
Soulama
Sprint - Fr 05.11.04 00:31
Titel: Re: Component name
Soulama hat folgendes geschrieben: |
möchte den Namen eines Component wissen, von dem ich nur den Handle habe? |
Von welchem Handle? Vom Fensterhandle, Instanzenhandle oder?
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| function GetComponentNameFromWndHandle(Handle: HWND): String;
function GetComponentName(AComponent: TComponent; AHandle: HWND): String; var I: Integer; begin for I := 0 to AComponent.ComponentCount - 1 do if (AComponent.Components[I] as TWinControl).Handle = AHandle then Result := (AComponent.Components[I] as TWinControl).Name else Result := GetComponentName(AComponent.Components[I], AHandle); end;
begin
Result := GetComponentName(Application, Handle);
end; |
Sprint - Fr 05.11.04 00:35
Hatte die "is" Abfrage vergessen...
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| function GetComponentNameFromWndHandle(Handle: HWND): String;
function GetComponentName(AComponent: TComponent; AHandle: HWND): String; var I: Integer; begin for I := 0 to AComponent.ComponentCount - 1 do if AComponent.Components[I] is TWinControl then if (AComponent.Components[I] as TWinControl).Handle = AHandle then Result := (AComponent.Components[I] as TWinControl).Name else Result := GetComponentName(AComponent.Components[I], AHandle); end;
begin
Result := GetComponentName(Application, Handle);
end; |
Soulama - Fr 05.11.04 12:00
Danke für deine hilfe.
Soulama.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!