![]() |
DBGrid Eigenschaften
Hallo zusammen,
ich arbeite mit der KADAO-Komponente (KADAOTable, KADAODatabase, DataSource). Diese Komponenten sind miteinander verbunden und an mein DBGrid angeknüpft. Ich erstelle zur Laufzeit meine Spalten mit "Grid.Columns.Add" un weise anschließend die Caption und die ggf. die Breite jeder Spalte zu. Das funktioniert auch einwandfrei. Mein Problem besteht darin, dass alle mit dem Grid verbundenen Funktionen nicht mehr funktionieren. Als Beispiel: - Bei den Optionen ist dgMultiSelect = True, es werden dennoch nicht mehrere Zeilen markiert - dgRowSelect = True, dennoch werden einzelne Zellen angewählt - Beim OnClick-Ereignis habe ich vorher die Anzahl von Grid.SelectedRows.Count anzeigen lassen und jetzt ists ständig 0 Da gibts viele weitere Punkte. Ich hoffe ihr könnt mir helfen. Danke. Gruß, Moony |
Re: DBGrid Eigenschaften
Wenn Du einem DBGrid eine Datasource zuweist, dann werden doch alle Zeilem und vor allem alle Spalten automatisch angezeigt.
Was willst Du mit "Grid.Columns.Add" erreichen? |
Re: DBGrid Eigenschaften
Ich weiß, dass alles angezeigt wird und das ist das was ich nicht will. Ich möchte die komplette Datenmenge in meiner ADOTable haben, aber nur bestimmte Spalten mit variablen Captions angezeigt bekommen. Deshalb erstelle ich die Spalten separat und weise diesen dann das richtige Feld aus der Tabelle zu.
|
Re: DBGrid Eigenschaften
Zitat:
a) es ist generell nicht so vorteilhaft, mit TTable (KADAOTable wird wohl ein Nachfahre davon sein) zu arbeiten. Eine TTable liesst immer die gesamte Tabelle ein und schreibt bei Änderungen immer die gesamte Tabelle zurück. b) wenn Du nur bestimmte Records haben willst, dann bau Dir eine entsprechende Query zusammen und lass das Ergebnis im DBGrid anzeigen. c) Ein DBGrid ist dafür gemacht, dass es direkt Daten aus der DB (via Dataset und Datasource) anzeigt. Pfuscht man dem DBGrid dazwischen, verhält es sich gerne mal "komisch". |
Re: DBGrid Eigenschaften
kommst du dann nicht besser wenn du gleich ein normales Grid nimmst und nicht eins was mit der Datenbank verbunden ist? Oder kannst du die Abfrage an die Datenbank nicht gleich so gestalten das die Datenbank nur die entsprechenden Datensätze zurück gibt?
Könntest du dem Beitrag eventuell einen aussagekräftigeren Titel geben? :) |
Re: DBGrid Eigenschaften
Zitat:
Was sind die KADAO-Komponenten und warum arbeitest Du gerade damit? |
DP-Maintenance
Dieses Thema wurde von "SirThornberry" von "VCL / WinForms / Controls" nach "Datenbanken" verschoben.
|
Re: DBGrid Eigenschaften
@Raven:
1. KADAO ist der Vorgänger von ADO 2. Ich verwende KADAO, weil das ein älteres Projekt ist und mit der MS Access DB arbeitet. Was die Records betrifft möchte ich alle Records der Datenbank angezeigt bekommen, jedoch nicht immer alle Spalten der DB. 3. Wenn ich das über ein Query & ADO regel, habe ich nicht immer alle Daten der Tabelle im Query verfügbar. @Thornberry: Ich möchte ja nicht die Daten zu Fuß aus der DB holen und ins Grid einpflegen. |
Re: DBGrid Eigenschaften
Zitat:
Eine Query dient zur Abfrage spezieller Daten aus einer Tabelle. Da hat man meistens nie ALLE Daten der Tabelle drin. Würde auch keinen Sinn machen. Man holt sich aus der DB, genau das, was man braucht und zeigt es im Grid an. Zitat:
|
Re: DBGrid Eigenschaften
Also, zum Verständnis und um weitere Fragen nach dem Warum abzuwürgen:
Die Daten in der Datenbank werden ALLE in meine KADAO-Tabelle geladen. Für die Anzeige sind nicht alle Spalten relevant. Nachdem dann im Grid x Datensätze ausgewählt wurden, werden ALLE Daten eines Datensatzes in eine andere Datenbank & Tabelle importiert. Ich hoffe damit ist die Frage nach dem Warum geklärt! Des weiteren schreibe ich nicht zu Fuß alle Daten in das Grid, sondern lege lediglich die Spalten fest und die Daten werden anschließend selbständig in das Griid gefüllt. Anders wäre das bei einem StringGrid. Um wieder zu meinem eigentlichen Problem zu kommen: - Bei den Optionen ist dgMultiSelect = True, es werden dennoch nicht mehrere Zeilen markiert - dgRowSelect = True, dennoch werden einzelne Zellen angewählt - Beim OnClick-Ereignis habe ich vorher die Anzahl von Grid.SelectedRows.Count anzeigen lassen und jetzt ists ständig 0 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:36 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 by Thomas Breitkreuz