unit dbtest;
interface
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Grids, DBGrids, Db, ADODB, DBCtrls, Buttons, ExtCtrls, Mask,
  DBTables, ComCtrls, QuickRpt, Qrctrls;
type
  TForm1 = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    DataSource1: TDataSource;
    Table1: TTable;
    DBGrid1: TDBGrid;
    Button3: TButton;
    Button2: TButton;
    Button4: TButton;
    Button5: TButton;
    DBNavigator1: TDBNavigator;
    Button1: TButton;
    Panel1: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    DBEdit1: TDBEdit;
    DBEdit2: TDBEdit;
    DBEdit3: TDBEdit;
    DBEdit4: TDBEdit;
    DBEdit5: TDBEdit;
    DBEdit8: TDBEdit;
    DBEdit10: TDBEdit;
    GroupBox1: TGroupBox;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn1: TBitBtn;
    BitBtn6: TBitBtn;
    BitBtn7: TBitBtn;
    BitBtn5: TBitBtn;
    Panel3: TPanel;
    Label6: TLabel;
    Label13: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Button8: TButton;
    Button6: TButton;
    Button7: TButton;
    Button9: TButton;
    Button12: TButton;
    Button13: TButton;
    GroupBox2: TGroupBox;
    Edit3: TEdit;
    Edit4: TEdit;
    Label14: TLabel;
    Label15: TLabel;
    Button14: TButton;
    Edit5: TEdit;
    Label16: TLabel;
    TabSheet3: TTabSheet;
    QuickRep1: TQuickRep;
    DateTimePicker1: TDateTimePicker;
    DateTimePicker2: TDateTimePicker;
    DBComboBox1: TDBComboBox;
    DBComboBox2: TDBComboBox;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn7Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
    procedure Button8Click(Sender: TObject);
    procedure Button9Click(Sender: TObject);
    procedure Button12Click(Sender: TObject);
    procedure Button13Click(Sender: TObject);
    procedure Button14Click(Sender: TObject);
    procedure DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
 //procedure setenabled();
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
  procedure updatedatetime;
implementation
{$R *.DFM}
procedure updatedatetime;
begin
  DateTimePicker1.datetime:=table1.fieldbyname('ship date').asdatetime;
  DateTimePicker2.datetime:=table1.fieldbyname('required date').asdatetime;
end;提示出錯:Undeclare identifier :'datetimepicker1'
不知為何?

解决方案 »

  1.   

    你将注示掉,然后再看看你的窗体上的控件
    DateTimePicker1: TDateTimePicker;
      

  2.   

    //你定义的地方在
    var
      Form1: TForm1;
      procedure updatedatetime;那么实现的时候,你能告诉它DateTimePicker1在什么地方
    procedure updatedatetime;
    begin
    //Form1.XXXX
      Form1.DateTimePicker1.datetime:=Form1.table1.fieldbyname('ship date').asdatetime;
      Form1.DateTimePicker2.datetime:=Form1.table1.fieldbyname('required date').asdatetime;
    end;//总感觉有点怪
    你还不如把定义的地方移到
    .....
    public
        { Public declarations }
       procedure updatedatetime;
      end;
      

  3.   

    procedure updatedatetime;
    begin
      DateTimePicker1.datetime:=table1.fieldbyname('ship date').asdatetime;
      DateTimePicker2.datetime:=table1.fieldbyname('required date').asdatetime;
    end;它说没有定义的标识,你不要告诉我说上面以定义了。你的这个过程不属于Tform1 ,而 DateTimePicker1 是属于 TForm1 的,为什么这样写!!为什么???真是想不通你要做什么??你为什么不将它写在单元的每一行,真是怪事,看看基本概念好不好。
      

  4.   

    最起码也要写成
    procedure updatedatetime;
    begin
    //Form1.XXXX
      Form1.DateTimePicker1.datetime:=Form1.table1.fieldbyname('ship date').asdatetime;
      Form1.DateTimePicker2.datetime:=Form1.table1.fieldbyname('required date').asdatetime;
    end;
      

  5.   

    zyxlp的话虽然有点逆耳,但也是真知灼见,所以还是要感谢你。