RT

解决方案 »

  1.   

    在你的程序中替换掉TDBEdit,代码如下:unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, DB, DBTables, StdCtrls, Mask, DBCtrls;type
     TDBEdit = class(DBCtrls.TDBEdit)
     private
       FAlignment : TAlignment;
       procedure SetAlignment(Value: TAlignment);
     protected
       procedure CreateParams(var Params: TCreateParams); override;
     public
       property Alignment: TAlignment read FAlignment write SetAlignment;
    end;type
      TForm1 = class(TForm)
        DBEdit1: TDBEdit;
        DataSource1: TDataSource;
        Table1: TTable;
        procedure FormCreate(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TDBEdit.CreateParams(var Params: TCreateParams);
    const
     Alignments : array[TAlignment] of LongWord= (ES_Left,ES_Right, ES_Center);
    begin
     inherited CreateParams(Params);
     Params.Style := Params.Style or Alignments[FAlignment];
    end;procedure TDBEdit.SetAlignment(Value: TAlignment);
    begin
     if FAlignment <> Value then
     begin
       FAlignment := Value;
       RecreateWnd;
     end;
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
      DBEdit1.Alignment := taCenter;  // 居中,也可以设成左对齐或右对齐
    end;end.
      

  2.   

    TO:sysu(死树)
    我是一个新手,很多地方都不懂,
    这是我的源程序,你帮我看看,要在哪里更改?
    另外,在程序中我还有一个问题,我做了注解,你也一起帮我看看! unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, Grids, DBGrids, ComCtrls, DB, DBTables, Menus, DBActns,
      StdActns, ActnList, ImgList, ToolWin, DBCtrls, ExtCtrls, StdCtrls, Mask;type
      TForm1 = class(TForm)
        DataSource1: TDataSource;
        Table1: TTable;
        StatusBar1: TStatusBar;
        DBGrid1: TDBGrid;
        ImageList1: TImageList;
        ActionList1: TActionList;
        EditCut1: TEditCut;
        EditCopy1: TEditCopy;
        EditPaste1: TEditPaste;
        EditSelectAll1: TEditSelectAll;
        EditUndo1: TEditUndo;
        EditDelete1: TEditDelete;
        DataSetFirst1: TDataSetFirst;
        DataSetPrior1: TDataSetPrior;
        DataSetNext1: TDataSetNext;
        DataSetLast1: TDataSetLast;
        DataSetInsert1: TDataSetInsert;
        DataSetDelete1: TDataSetDelete;
        DataSetEdit1: TDataSetEdit;
        DataSetPost1: TDataSetPost;
        DataSetCancel1: TDataSetCancel;
        DataSetRefresh1: TDataSetRefresh;
        MainMenu1: TMainMenu;
        File1: TMenuItem;
        Edit1: TMenuItem;
        Exit1: TMenuItem;
        Copy1: TMenuItem;
        Cut1: TMenuItem;
        Paste1: TMenuItem;
        Delete1: TMenuItem;
        SelectAll1: TMenuItem;
        Undo1: TMenuItem;
        Record1: TMenuItem;
        First1: TMenuItem;
        Last1: TMenuItem;
        Next1: TMenuItem;
        Post1: TMenuItem;
        Delete2: TMenuItem;
        Cancel1: TMenuItem;
        Edit2: TMenuItem;
        Insert1: TMenuItem;
        Prior1: TMenuItem;
        Refresh1: TMenuItem;
        ToolBar1: TToolBar;
        ToolButton1: TToolButton;
        ToolButton2: TToolButton;
        ToolButton3: TToolButton;
        ToolButton4: TToolButton;
        ToolButton5: TToolButton;
        ToolButton6: TToolButton;
        ToolButton7: TToolButton;
        ToolButton8: TToolButton;
        ToolButton9: TToolButton;
        ToolButton10: TToolButton;
        ToolButton11: TToolButton;
        ToolButton12: TToolButton;
        ToolButton13: TToolButton;
        ToolButton14: TToolButton;
        ToolButton15: TToolButton;
        ToolButton16: TToolButton;
        Panel1: TPanel;
        DBImage1: TDBImage;
        DBEdit1: TDBEdit;
        DBEdit2: TDBEdit;
        DBEdit3: TDBEdit;
        DBEdit4: TDBEdit;
        Label1: TLabel;
        Label2: TLabel;
        Label3: TLabel;
        Label4: TLabel;
        procedure EXIT1Click(Sender: TObject);
        procedure DBEdit1Change(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.EXIT1Click(Sender: TObject);
    begin
    close;
    end;procedure TForm1.DBEdit1Change(Sender: TObject);
    begin
    statusbar1.simpletext:=dbedit1.datafield;       //这里想让STATUSBAR1中的SIMPLETEXT变成数据库中的一个字段。我在DBEDIT1中设定了数据库,且DATAFIELD设定了数据据库中的一个字段。
    end;end.
      

  3.   

    改成这样:unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, Grids, DBGrids, ComCtrls, DB, DBTables, Menus, DBActns,
      StdActns, ActnList, ImgList, ToolWin, DBCtrls, ExtCtrls, StdCtrls, Mask;type
     TDBEdit = class(DBCtrls.TDBEdit)
     private
       FAlignment : TAlignment;
       procedure SetAlignment(Value: TAlignment);
     protected
       procedure CreateParams(var Params: TCreateParams); override;
     public
       property Alignment: TAlignment read FAlignment write SetAlignment;
    end;type
      TForm1 = class(TForm)
        DataSource1: TDataSource;
        Table1: TTable;
        StatusBar1: TStatusBar;
        DBGrid1: TDBGrid;
        ImageList1: TImageList;
        ActionList1: TActionList;
        EditCut1: TEditCut;
        EditCopy1: TEditCopy;
        EditPaste1: TEditPaste;
        EditSelectAll1: TEditSelectAll;
        EditUndo1: TEditUndo;
        EditDelete1: TEditDelete;
        DataSetFirst1: TDataSetFirst;
        DataSetPrior1: TDataSetPrior;
        DataSetNext1: TDataSetNext;
        DataSetLast1: TDataSetLast;
        DataSetInsert1: TDataSetInsert;
        DataSetDelete1: TDataSetDelete;
        DataSetEdit1: TDataSetEdit;
        DataSetPost1: TDataSetPost;
        DataSetCancel1: TDataSetCancel;
        DataSetRefresh1: TDataSetRefresh;
        MainMenu1: TMainMenu;
        File1: TMenuItem;
        Edit1: TMenuItem;
        Exit1: TMenuItem;
        Copy1: TMenuItem;
        Cut1: TMenuItem;
        Paste1: TMenuItem;
        Delete1: TMenuItem;
        SelectAll1: TMenuItem;
        Undo1: TMenuItem;
        Record1: TMenuItem;
        First1: TMenuItem;
        Last1: TMenuItem;
        Next1: TMenuItem;
        Post1: TMenuItem;
        Delete2: TMenuItem;
        Cancel1: TMenuItem;
        Edit2: TMenuItem;
        Insert1: TMenuItem;
        Prior1: TMenuItem;
        Refresh1: TMenuItem;
        ToolBar1: TToolBar;
        ToolButton1: TToolButton;
        ToolButton2: TToolButton;
        ToolButton3: TToolButton;
        ToolButton4: TToolButton;
        ToolButton5: TToolButton;
        ToolButton6: TToolButton;
        ToolButton7: TToolButton;
        ToolButton8: TToolButton;
        ToolButton9: TToolButton;
        ToolButton10: TToolButton;
        ToolButton11: TToolButton;
        ToolButton12: TToolButton;
        ToolButton13: TToolButton;
        ToolButton14: TToolButton;
        ToolButton15: TToolButton;
        ToolButton16: TToolButton;
        Panel1: TPanel;
        DBImage1: TDBImage;
        DBEdit1: TDBEdit;
        DBEdit2: TDBEdit;
        DBEdit3: TDBEdit;
        DBEdit4: TDBEdit;
        Label1: TLabel;
        Label2: TLabel;
        Label3: TLabel;
        Label4: TLabel;
        procedure EXIT1Click(Sender: TObject);
        procedure DBEdit1Change(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TDBEdit.CreateParams(var Params: TCreateParams);
    const
     Alignments : array[TAlignment] of LongWord= (ES_Left,ES_Right, ES_Center);
    begin
     inherited CreateParams(Params);
     Params.Style := Params.Style or Alignments[FAlignment];
    end;procedure TDBEdit.SetAlignment(Value: TAlignment);
    begin
     if FAlignment <> Value then
     begin
       FAlignment := Value;
       RecreateWnd;
     end;
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
      DBEdit1.Alignment := taCenter;  // 居中,也可以设成左对齐或右对齐
      DBEdit2.Alignment := taCenter;
      DBEdit3.Alignment := taCenter;
      DBEdit4.Alignment := taCenter;
    end;procedure TForm1.EXIT1Click(Sender: TObject);
    begin
    close;
    end;procedure TForm1.DBEdit1Change(Sender: TObject);
    begin
    statusbar1.simpletext:=dbedit1.Text;
    end;end.
      

  4.   

    编译不过去,这是系统提示?
    这是什么原因?
    [Error] Unit1.pas(125): Undeclared identifier: 'FormCreate'
    [Error] Unit1.pas(127): Undeclared identifier: 'DBEdit1'
      

  5.   

    不要光把代码拷过去,DBEdit1之类的控件要添加到Form上,相应的事件也先生成,再往里面加代码。
      

  6.   

    控件和相应的事件事先已生成了,
    是procedure FormCreate(Sender: TObject);没有加入到TYPE里
    加上就OK了!
    结帐!