Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi werte im dbgrid anders darstellen ? (https://www.delphipraxis.net/91731-werte-im-dbgrid-anders-darstellen.html)

agm65 9. Mai 2007 09:06


werte im dbgrid anders darstellen ?
 
moin leute...mal ne frage ..und zwar bekomme ich aus meiner db zum beispiel werte wie 'portal_id' 1,2,3
wie kann ich jetzt sagen: bei wert 1 zeige an test1 zum beispiel ?
danke euch

marabu 9. Mai 2007 09:10

Re: werte im dbgrid anders darstellen ?
 
Hallo Peter,

Übersetzungen von Feldwerten kannst du beim Ereignis OnGetText() der Feldkomponente vornehmen.

Freundliche Grüße

agm65 9. Mai 2007 09:20

Re: werte im dbgrid anders darstellen ?
 
dazu müsste ich felder vordefinieren oder ? weil ich das grid für mehrere dbs verwende, habe ich keine felder definiert. geht das trotzdem ?

agm65 11. Mai 2007 14:11

Re: werte im dbgrid anders darstellen ?
 
*push*

marabu 11. Mai 2007 16:06

Re: werte im dbgrid anders darstellen ?
 
Hallo Peter,

der einzige Unterschied ist, dass du ohne vordefinierte Felder den Object Inspector nicht nutzen kannst:

Delphi-Quellcode:
type
  TDemoForm = class(TForm)
    // ...
  private
    procedure GetPortalId(Sender: TField; var Text: string; DisplayText: Boolean);
  end;

implementation

procedure TDemoForm.GetPortalId(Sender: TField; var Text: string; DisplayText: Boolean);
begin
  Text := Format('test%d', [Sender.AsInteger]);
end;

procedure TDemoForm.FormCreate(Sender: TObject);
begin
  Query.FieldByName('Portal_ID').OnGetText := GetPortalId;
end;
Freundliche Grüße

agm65 11. Mai 2007 16:07

Re: werte im dbgrid anders darstellen ?
 
teste ich direkt am montag gehe jetzt heim ...aber vielen vielen dank !

agm65 14. Mai 2007 09:22

Re: werte im dbgrid anders darstellen ?
 
hey danke, das läuft ! nur wie kann ich da jetzt meinen "if" unterbringen ..das wenn der text zB 2 ist, ich dann dafür einen anderen wert reinschreibe als bei zB 1 ? ..danke

agm65 14. Mai 2007 10:30

Re: werte im dbgrid anders darstellen ?
 
danke dir

agm65 15. Mai 2007 09:10

Re: werte im dbgrid anders darstellen ?
 
nochmal kurz hierzu ..wie kann ich denn sagen if fieldvalue = 1 then text := eins else if text := 2 usw ?

marabu 15. Mai 2007 09:19

Re: werte im dbgrid anders darstellen ?
 
Hallo Peter,

die Übersetzung der Feldwerte kannst du in der Methode GetPortalID() machen:

Delphi-Quellcode:
procedure TDemoForm.GetPortalId(Sender: TField; var Text: string; DisplayText: Boolean);
var
  id: Integer;
begin
  id := Sender.AsInteger;
  case id of
    1: Text := 'eins';
    2: Text := 'zwei';
  else Text := Sender.AsString;
  end;
end;
Freundliche Grüße


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:17 Uhr.
Seite 1 von 2  1 2      

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