Autor Beitrag
loriot
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Mo 17.11.08 12:34 
Frage: Kann man in einem DBEdit-Feld die Textausrichtung (z.B. stets rechtsbündig) festlegen???
Ich habe noch keine entsprechende Eigenschaft gefunden. Es ist ja so, dass wenn Int-Werte angezeigt werden diese rechtsbündig erscheinen und char-Werte linksbündig.
Die Werte kommen bei mir aus einen MySQL-DB.
Danke!
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 17.11.08 13:33 
Mit einem Edit hab ich das mal gemacht, dürfte mit einem DBEdit auch so gehen.
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
//das hier muss vor die Deklaration des Formulars
type
  TDBEdit = class(DBCtrls.TDBEdit)
  private
    { Private-Deklarationen }
    FAlignment: TAlignment;
  protected
    { Protected-Deklarationen }
    procedure SetAlignment(Value: TAlignment);
    procedure CreateParams(var Params: TCreateParams); override;
  public
    { Public-Deklarationen }
    property Alignment: TAlignment read FAlignment write SetAlignment
                        default taLeftJustify;
  end;
...

//und das hier in den implementation-Teil
procedure TDBEdit.CreateParams(var Params: TCreateParams);
const
  Alignments: array[TAlignment] of DWORD = (ES_LEFT, ES_RIGHT, ES_CENTER);
begin
  inherited CreateParams(Params);
  with Params do
    Style := Style or Alignments[FAlignment];
end;

procedure TDBEdit.SetAlignment(Value: TAlignment);
begin
  if FAlignment <> Value then
    begin
      FAlignment := Value;
      RecreateWnd;
    end;
end;


Nun solltest Du Alignment im Quelltext setzen können.