📄 di_dbcalendar.pas
字号:
unit DI_DBCalendar;
{
代码单元名称:通用数据登录工具时间与日期型数据编辑窗口
从属软件:大连资金清算中心打码机管理信息系统
开发单位:大连理工大学计算机技术研究所软件工程研究室
作者:王树润
时间:2001,1,30
}
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls, StdCtrls, dbgrids, dbctrls;
type
TDI_DfmDBCalendar = class(TForm)
MonthCalendar1: TMonthCalendar;
DateTimePicker1: TDateTimePicker;
Label1: TLabel;
Label2: TLabel;
TimeInputButton: TButton;
DateInputButton: TButton;
CloseButton: TButton;
DateTimeInputButton: TButton;
procedure TimeInputButtonClick(Sender: TObject);
procedure DateInputButtonClick(Sender: TObject);
procedure CloseButtonClick(Sender: TObject);
procedure DateTimeInputButtonClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure DateTimePicker1DblClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
DBGrid1: TDBGrid;
DBEdit1: TDBEdit;
IdentifyString: string;
DfmDBCalendar_Date: string;
DfmDBCalendar_Time: string;
DfmDBCalendar_DateTime: string;
constructor Create(Owner: TComponent; ADBGrid1: TDBGrid; ADBEdit1: TDBEdit;
AIdentifyString: string); overload;
end;
implementation
{$R *.DFM}
{ TDfmDBCalendar }
//构造函数======================================================================
constructor TDI_DfmDBCalendar.Create(Owner: TComponent; ADBGrid1: TDBGrid;
ADBEdit1: TDBEdit; AIdentifyString: string);
begin
inherited Create(Owner);
DBGrid1 := ADBGrid1;
DBEdit1 := ADBEdit1;
IdentifyString := AIdentifyString;
end;
procedure TDI_DfmDBCalendar.FormShow(Sender: TObject);
begin
MonthCalendar1.Date := Date;
DateTimePicker1.Time := Time;
if Pos('日期', DbEdit1.Field.FieldName) <> 0 then
begin
DateInputButton.Top := 8;
CloseButton.Top := 27;
TimeInputButton.Visible := False;
DateTimeInputButton.Visible := False;
end;
end;
//关闭==========================================================================
procedure TDI_DfmDBCalendar.CloseButtonClick(Sender: TObject);
begin
Close;
end;
//时间输入======================================================================
procedure TDI_DfmDBCalendar.TimeInputButtonClick(Sender: TObject);
begin
DfmDBCalendar_Time := TimeToStr(DateTimePicker1.Time);
if IdentifyString = 'DBGrid' then
begin
DBGrid1.SelectedField.AsDateTime := StrToDatetime(DfmDBCalendar_Time);
Close;
end
else if IdentifyString = 'DBEdit' then
begin
DBEdit1.Field.AsDateTime := StrToDatetime(DfmDBCalendar_Time);
Close;
end
else
Close;
end;
//日期输入======================================================================
procedure TDI_DfmDBCalendar.DateInputButtonClick(Sender: TObject);
begin
DfmDBCalendar_Date := DateToStr(MonthCalendar1.Date);
if IdentifyString = 'DBGrid' then
begin
DBGrid1.SelectedField.AsDateTime := StrToDatetime(DfmDBCalendar_Date);
Close;
end
else if IdentifyString = 'DBEdit' then
begin
DBEdit1.Field.AsDateTime := StrToDatetime(DfmDBCalendar_Date);
Close;
end
else
Close;
end;
//共同输入======================================================================
procedure TDI_DfmDBCalendar.DateTimeInputButtonClick(Sender: TObject);
begin
DfmDBCalendar_Time := TimeToStr(DateTimePicker1.Time);
DfmDBCalendar_Date := DateToStr(MonthCalendar1.Date);
DfmDBCalendar_DateTime := DfmDBCalendar_Date + ' ' + DfmDBCalendar_Time;
if IdentifyString = 'DBGrid' then
begin
DBGrid1.SelectedField.AsDateTime := StrToDatetime(DfmDBCalendar_DateTime);
Close;
end
else if IdentifyString = 'DBEdit' then
begin
DBEdit1.Field.AsDateTime := StrToDatetime(DfmDBCalendar_DateTime);
Close;
end
else
Close;
end;
procedure TDI_DfmDBCalendar.DateTimePicker1DblClick(Sender: TObject);
begin
DfmDBCalendar_Time := TimeToStr(DateTimePicker1.Time);
if IdentifyString = 'DBGrid' then
begin
DBGrid1.SelectedField.AsDateTime := StrToDatetime(DfmDBCalendar_Time);
Close;
end
else if IdentifyString = 'DBEdit' then
begin
DBEdit1.Field.AsDateTime := StrToDatetime(DfmDBCalendar_Time);
Close;
end
else
Close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -