Es gibt keine aktiven Komponenten, sondern pro Formular nur
ein Steuerelement (=control), dass den Fokus hat.
Dieses Steuerlement kann man mit TForm.
ActiveControl abfragen.
LabelInfo.Text := self.ActiveControl.Name;
Wenn dich zusätzlich interessiert, auf welchem Panel/Groupbox ein Steuerelement liegt, dann kannst
du so vorgehen:
Delphi-Quellcode:
var
c : Tcontrol;
s : string;
begin
c := self.ActiveControl;
if Assigned(c) then
begin
s := c.Name; // name des fokusierten Steuerelements
while (c.Parent <> nil) and (c.Parent<>self) do
begin
c := c.Parent;
s := c.Name + ' -> ' s; // Name des Parent dazu
end;
LabelInfo.Text := s;
end
else
LabelInfo.Text := 'kein Control selektiert';
end;