Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Wie sehe ich, ob in einem TDBGrid etwas angewählt ist? (https://www.delphipraxis.net/182704-wie-sehe-ich-ob-einem-tdbgrid-etwas-angewaehlt-ist.html)

Der schöne Günther 12. Nov 2014 12:36

Datenbank: Sybase Advantage • Version: 11 • Zugriff über: FireDAC

Wie sehe ich, ob in einem TDBGrid etwas angewählt ist?
 
Der Benutzer kann in einem Readonly-DBGrid einzelne Zeilen anklicken (kein MultiSelect). Eventuell wird dem TDataSource, an dem das TDBGrid hängt, das TDataSet weggenommen, also durch
Delphi-Quellcode:
nil
ersetzt.

Das möchte ich mitbekommen und wissen, ob im DB-Grid etwas angewählt ist oder nicht.

Ich mache es so: Auf das
Delphi-Quellcode:
OnStateChange
-Ereignis des TDataSource reagieren und sein
Delphi-Quellcode:
State
überprüfen. Ist es
Delphi-Quellcode:
dsBrowsing
, ist etwas markiert. Ist es
Delphi-Quellcode:
dsInactive
, ist der DBGrid leer und es ist nichts angewählt.

Kann das so klappen oder übersehe ich hier etwas? :balloon:

mm1256 12. Nov 2014 13:12

AW: Wie sehe ich, ob in einem TDBGrid etwas angewählt ist?
 
Na ja, das DataSet kann ja auch noch leer sein. Ich würde das in etwa so machen:

Delphi-Quellcode:
  if not Assigned(DBGrid.DataSource.DataSet)
  then NixZumAnzeigen else
  if DBGrid.DataSource.DataSet.IsEmpty
  then KeineDaten else WirdWohlWasdaSein;

Der schöne Günther 12. Nov 2014 13:27

AW: Wie sehe ich, ob in einem TDBGrid etwas angewählt ist?
 
Super, danke! :thumb:

Genau wegen solchen Ideen frage ich.

mm1256 12. Nov 2014 15:30

AW: Wie sehe ich, ob in einem TDBGrid etwas angewählt ist?
 
Na ja, so lange es nicht komlizierter wird und ich geistig noch mitkomme - gerne


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:32 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