AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi DBGrid und einzelne Zellen beschreiben?
Thema durchsuchen
Ansicht
Themen-Optionen

DBGrid und einzelne Zellen beschreiben?

Ein Thema von szorcc · begonnen am 1. Mär 2007 · letzter Beitrag vom 1. Mär 2007
Antwort Antwort
szorcc

Registriert seit: 8. Aug 2006
9 Beiträge
 
#1

DBGrid und einzelne Zellen beschreiben?

  Alt 1. Mär 2007, 12:45
Datenbank: csv • Zugriff über: JvCsvDataSet
Hallo,

ich habe eine DataSource an ein DBGrid angebunden, was auch soweit funktioniert.

Nun möchte ich nur in der Anzeige in dem Grid eine Spalte mit eigenen berechneten Werten beschreiben. Geht das auch mit dem DBGrid (und wie?) oder muss man da ein StringGrid nehmen? Und wenn StringGrid, wie kann man das am elegantesten mit dem DataSource verbinden?

Szorcc
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: DBGrid und einzelne Zellen beschreiben?

  Alt 1. Mär 2007, 12:47
Ja, durch Einfügen eines berechneteten Feldes
Markus Kinzler
  Mit Zitat antworten Zitat
szorcc

Registriert seit: 8. Aug 2006
9 Beiträge
 
#3

Re: DBGrid und einzelne Zellen beschreiben?

  Alt 1. Mär 2007, 12:58
Und wie (wo) macht man das?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: DBGrid und einzelne Zellen beschreiben?

  Alt 1. Mär 2007, 13:19
Am DataSet
Markus Kinzler
  Mit Zitat antworten Zitat
szorcc

Registriert seit: 8. Aug 2006
9 Beiträge
 
#5

Re: DBGrid und einzelne Zellen beschreiben?

  Alt 1. Mär 2007, 13:20
Also ich habe jetzt direkt am DataSet das zu berechnende Feld hinzugefügt. Aber eben am DataSet! Ich verstehe das jetzt so, dass ich die berechneten Werte nun auch dort am DataSet reinschreibe, oder?.

Das Problem an der Sache ist nun, dass das Grid fürchterlich flackert, weil die berechnete Spalte aller 1 sek. aktualisiert wird (muss so sein).
Delphi-Quellcode:
for ... do
begin
  DataSet.First();
  //Feld beschreiben...
  DataSet.Next;
end;
Und der Fokus ist dann immer in der letzten Zeile.

Deswegen wollte ich gleich auf die Zellen des DBGrid schreiben.

Gibt es da vielleicht eine elegante Lösung?
  Mit Zitat antworten Zitat
szorcc

Registriert seit: 8. Aug 2006
9 Beiträge
 
#6

Re: DBGrid und einzelne Zellen beschreiben?

  Alt 1. Mär 2007, 14:47
Ich habe jetzt ein StringGrid genommen...
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: DBGrid und einzelne Zellen beschreiben?

  Alt 1. Mär 2007, 14:55
Zitat:
Also ich habe jetzt direkt am DataSet das zu berechnende Feld hinzugefügt. Aber eben am DataSet! Ich verstehe das jetzt so, dass ich die berechneten Werte nun auch dort am DataSet reinschreibe, oder?.
Berechnete Felder, werden wie der name sagt, wenn benötigt berechnet.
Markus Kinzler
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#8

Re: DBGrid und einzelne Zellen beschreiben?

  Alt 1. Mär 2007, 15:09
Man verwendet das Event OnCalcFields:
Delphi-Quellcode:
procedure TForm1.Query1CalcFields(DataSet: TDataSet);
begin
   Dataset['Flaeche'] := Dataset.FieldByName('Breite').AsFloat*Dataset.FieldByName('Laenge').AsFloat;
end;
Andreas
  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 07:19 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