AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi DataGrid unsichtbare Info für jede Zeile
Thema durchsuchen
Ansicht
Themen-Optionen

DataGrid unsichtbare Info für jede Zeile

Ein Thema von S2B · begonnen am 3. Sep 2005 · letzter Beitrag vom 3. Sep 2005
Antwort Antwort
Benutzerbild von S2B
S2B

Registriert seit: 1. Feb 2004
Ort: Aachen
1.268 Beiträge
 
#1

DataGrid unsichtbare Info für jede Zeile

  Alt 3. Sep 2005, 19:28
Hi @all,
ih habe hier ein DataGrid, das ich mit Daten aus einer Datenbank füttere (*klick*). Ich möchte jedoch, dass die ID's der Einträge (aus der Datenbank) zwar mit den Zeilen im DataGrid verknüpft werden, jedoch nicht angezeigt werden.

Wie könnte ich so etwas am besten lösen?

Edit: Oder soll ich vielleicht eine ListView nehmen? Editieren muss ich im DataGrid sowieso nicht...
Simon Praetorius
Gruß
S2B
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#2

Re: DataGrid unsichtbare Info für jede Zeile

  Alt 3. Sep 2005, 19:50
Kannst du dein Problem bitte etwas ausführlicher beschreiben dann kann ich dir warscheinlich helfen
  Mit Zitat antworten Zitat
Benutzerbild von S2B
S2B

Registriert seit: 1. Feb 2004
Ort: Aachen
1.268 Beiträge
 
#3

Re: DataGrid unsichtbare Info für jede Zeile

  Alt 3. Sep 2005, 19:56
Zitat von etom291272:
Kannst du dein Problem bitte etwas ausführlicher beschreiben dann kann ich dir warscheinlich helfen
Kein Problem, es ist irgendwie nicht so leicht zu beschreiben.

Ich lese aus einer Datenbank Adressdaten für ein Adressenprogramm aus. Jede Zeile in der Datenbank hat eine einmalige ID, über die ich nachher die Zeile genau ansprechen will (z.B. bei einem Doppelklick auf einen Eintrag im DataGrid). Jedoch soll diese ID nicht wie die anderen Spalten im DataGrid angezeigt werden, sondern für den Benutzer nicht sichtbar sein. Jedoch muss sie, damit ich nachher den geklickten Eintrag ansprechen kann, im Bezug auf die einzelnen Zeilen im DataGrid abgespeichert werden.

Ich hoffe, dass die Erklärung besser ist.
Simon Praetorius
Gruß
S2B
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#4

Re: DataGrid unsichtbare Info für jede Zeile

  Alt 3. Sep 2005, 19:59
Hai S2B,

klicke mal mit der rechten Maustaste auf das DBGrid. Dort kannst Du im "Spalteneditor" angeben welche Felder angezeigt werden
.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von S2B
S2B

Registriert seit: 1. Feb 2004
Ort: Aachen
1.268 Beiträge
 
#5

Re: DataGrid unsichtbare Info für jede Zeile

  Alt 3. Sep 2005, 20:04
Zitat von Sharky:
klicke mal mit der rechten Maustaste auf das DBGrid. Dort kannst Du im "Spalteneditor" angeben welche Felder angezeigt werden
Es ist nur leider kein DBGrid, sondern ein normales DataGrid.

Edit: Quatsch mit Soße, das gibt's ja gar nicht. Es ist ein TStringGrid... Ich hab nur meine Komponente auf der Form so benannt...
Simon Praetorius
Gruß
S2B
  Mit Zitat antworten Zitat
etom291272

Registriert seit: 16. Feb 2004
Ort: ---
232 Beiträge
 
#6

Re: DataGrid unsichtbare Info für jede Zeile

  Alt 3. Sep 2005, 20:05

kein problem du hast ja in dem Dataset die möglichkeit deine Felder zu definieren (rechte maustaste auf die komponente und fields editor) da holst du dir mit add fields z.b deine id den namen, vornamen und sagen wir den ort
im dbgrid die datasource zuweisen und in den colums würden bei unserem Beispiel 3 Colums angelegt werden dort dann die datenfelder zuweisen die du im grid haben möchtest.
wenn das programm jetzt läuft ist aber das komplette recordset aktiv d.h alle vier felder wenn du z.b ein procedure den wert der id übergeben möchtest kannst du einfach auf die value oder asstring eigenschaft des datenfeldes welches als fixe komponente in die Formklasse integriert wird zugreifen.

  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#7

Re: DataGrid unsichtbare Info für jede Zeile

  Alt 3. Sep 2005, 20:12
Hai S2B,

wenn es dir "nur" um die ID des Datensatzes geht könntest Du diese über in Typecasting in der Eigenschaft Objects speichern.

Pseudocode:
Delphi-Quellcode:
procedure Id2StringGrid
begin
  StringGrid1.Objects[1,row] := TObject(DatensatzID);
end;
Beim Auslesen musst Du diese natürlich wieder in einen Integer casten
Delphi-Quellcode:
procedure StringGrid2ID;
var
  DatensatzID : integer;
begin
  DatensatzID := Integer(StringGrid1.Objects[1,row]);
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von S2B
S2B

Registriert seit: 1. Feb 2004
Ort: Aachen
1.268 Beiträge
 
#8

Re: DataGrid unsichtbare Info für jede Zeile

  Alt 3. Sep 2005, 20:40
Danke, das funktioniert perfekt. Jetzt kennt sich zwar niemand mehr im Quellcode aus (wegen den vielen +1 bzw. -1 in den for-Schleifen), aber ist ja auch egal.
Simon Praetorius
Gruß
S2B
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:55 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