![]() |
Datenbank: Access • Zugriff über: ADO
Format von DBGrid
hi,
ich habe hier eine accesstabelle mit daten. diese will ich mir in einem dbgrid anzeigen lassen. das problem ist das ich diese in einem bestimmten format ausgeben will, da ich das dbgrid später zum etiketten drucken benutzen will. das format soll ungefähr so aussehen
Delphi-Quellcode:
wie kann ich dieses format verwirklichen das die einzelnen daten so in der dbgrid zelle angezeigt werden?
___________________
| Name | | Farbe | | Farbe | | Farbe | | | | Preis - Preis | | Artikelnummer | |_________________| mfg |
Re: Format von DBGrid
Überhaupt nicht!
Dazu mußt Du schon andere Komponenten nehmen. Das DBGrid willst Du wohl nicht wirklich ausdrucken, sondern die Daten, oder :?: |
Re: Format von DBGrid
Hi,
DBGrid scheint mir für deine Zwecke nicht optimal zu sein. Hast du dir schonmal die Komponente DBCtrlGrid angeschaut? Dort könntest du eine den Etiketten ähnliche Ausgabe leicht basteln, indem du ein berechnetes Feld (Typ Memo) einführst. Grüße vom marabu |
Re: Format von DBGrid
Zitat:
also das dbctrlgrid hab ich gefunden - wenn ich aber nun nen memo drauf ziehen will geht das net :( wie meinst du das mit dem memo? kannst mir das vllt kurz erklären? |
Re: Format von DBGrid
Hi,
du sollst kein TMemo auf das Grid-Panel ziehen, sondern ein TDBMemo. Das Datenfeld zur Anzeige in dieser Memo-Komponente legst du als berechnetes Feld vom Typ Memo an. Dazu öffnest du mit einem Doppelklick auf die DataSet-Komponente (TADODataSet, TADOTable, TADOQuery, was immer du einsetzt) den property editor und über dessen Kontextmenü kannst du dann das berechnete Feld anlegen. Alles klar? Freundliche Grüße |
Re: Format von DBGrid
hi,
ok hab ich soweit geändert und hab auch alles eingefügt - nur das mit dem berechneten feld versteh ich noch nicht so ganz - hab zwar ein berechnetes feld vom typ ftmemo angelegt - das wie eine spalte in der tabelle heißt auch ne sql abfrage recht einfach zum testen (select name from farben) - aber ka passiert nix wenn ich die conenction auf active setze oder so wenn ich das programm starte ist das dbmemo auch nicht zu sehen was sollte ich noch ändern? - sorry ist schon ne zeit her das ich mit ado gearbeitet hab. grüße und danke |
Re: Format von DBGrid
Das berechnete Feld darf nicht namensgleich mit einem existierenden Feld der Tabelle sein - du meinst da bestimmt etwas anderes.
Im Ereignis OnCalcFields() deiner Dataset-Komponente kannst du den Inhalt des neuen Memo-Feldes nach deinen Wünschen zusammenstellen:
Delphi-Quellcode:
Freundliche Grüße
procedure TDemoForm.ADODataSetCalcFields(DataSet: TDataSet);
begin with DataSet do FieldByName('CALCMEMO').AsString := FieldByName('NACHNAME').AsString + sLineBreak + FieldByName('Vorname').AsString + sLineBreak; // ... end; |
Re: Format von DBGrid
hi,
danke für deine hilfe hab ich nun soweit das keine fehlermeldung mehr kommt ;)
Delphi-Quellcode:
so das einzige problem istn un das wenn ich das programm starte ich von dem memo nichts sehe und von dem eintrag auch nicht es ist nur die braune dbctrlgrid-kompo zu sehen.
procedure TForm1.queryCalcFields(DataSet: TDataSet);
begin query.SQL.Clear; query.SQL.Add('SELECT * FROM farben WHERE farbnummer="008"'); query.Open; query.First; query.FieldByName('calcmemo').AsString := query.fieldbyname('farbname').AsString; end; bei allen komponenten ist visible = true eingestellt. gruß |
Re: Format von DBGrid
Es ist gut möglich, dass ich dich mit TDBMemo auf eine falsche Fährte gelockt habe. Beim Versuch dein Problem in einem Demo nachzustellen habe ich festgestellt, dass der Feld-Editor zwar ein Memo-Feld als berechnetes Feld zulässt, beim Öffnen der Query zur Entwurfszeit aber eine Exception geworfen wird. Einen Beleg für meine Beobachtung finde ich aber in der Online Hilfe von Delphi auf die Schnelle nicht. Ich habe alternativ ein "Etikett" mit TDBLabel-Komponenten zusammengestellt. Probiere du mal.
Gute Nacht |
Re: Format von DBGrid
hi,
also ich hab keine tdblabel - komponente gefunden - hab dafür die tdbtext genommen denke das ist die gleiche? aber auch damit bekomme ich nichts angezeigt :( kannst du mir vllt deine demo zukommen lassen? gruß und danke für deine hilfe |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:03 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-2025 by Thomas Breitkreuz