Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Selectiertes DBGrid auf einer Form ermitteln (https://www.delphipraxis.net/136588-selectiertes-dbgrid-auf-einer-form-ermitteln.html)

HolgerCW 3. Jul 2009 10:46


Selectiertes DBGrid auf einer Form ermitteln
 
Hallo zusammen,

wie kann ich das selektierte oder fokusierte DBGrid auf einer Form ermitteln ?

Gruss

Holger

DeddyH 3. Jul 2009 11:01

Re: Selectiertes DBGrid auf einer Form ermitteln
 
ActiveControl?

HolgerCW 3. Jul 2009 11:47

Re: Selectiertes DBGrid auf einer Form ermitteln
 
Und wie genau arbeite ich mit ActiveControl ?

DeddyH 3. Jul 2009 11:52

Re: Selectiertes DBGrid auf einer Form ermitteln
 
Ich hab mal 3 DBGrids auf eine Form gepackt und allen im OnEnter diese Methode zugewiesen:
Delphi-Quellcode:
procedure TForm1.DBGrid1Enter(Sender: TObject);
begin
  ShowMessage(ActiveControl.Name);
end;

HolgerCW 3. Jul 2009 12:18

Re: Selectiertes DBGrid auf einer Form ermitteln
 
Ich habe das mal so gelöst:

Delphi-Quellcode:
For I := 0 to Form.ComponentCount - 1 do
begin

 if Form.Components[I] is TDBGrid then
 begin

  DBGrid := TDBGrid(Form.FindComponent(Form.Components[I].Name));

  If (DBGrid.Focused) then Result := Form.Components[I].Name;

 end;

end;
Ist der focus das selbe wie activecontrol ?

DeddyH 3. Jul 2009 12:23

Re: Selectiertes DBGrid auf einer Form ermitteln
 
Wenn ein Control den Fokus hat, ist es auch aktiv, von daher sollte das schon dasselbe sein.

joachimd 3. Jul 2009 12:23

Re: Selectiertes DBGrid auf einer Form ermitteln
 
Zitat:

Zitat von HolgerCW
Ist der focus das selbe wie activecontrol ?

ja und nein. ActiveControl liefert einen Zeiger auf das momentan fokussierte Steuerelement....Focus zeigt im Steuerelement selbst an, ob es momentan selektiert ist. Beide Wege gehen, aber Deiner ist aufwändiger (was, wenn Du 1000 controls drauf hast?).

HolgerCW 3. Jul 2009 12:34

Re: Selectiertes DBGrid auf einer Form ermitteln
 
Vielen dank für die Hilfen.

Werde dann mal ActiveControl nutzen.

Gruss

Holger


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:31 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz