在DBGRID中处理日期的输入?(100分)

  • 主题发起人 主题发起人 windwy
  • 开始时间 开始时间
W

windwy

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样在DBGRID中输入时期时,能够通过下拉框选定?类示DateTimePicker
见过用DateTimePicker实现的,
我无法给DateTimePicker定位,在DBGRID中有两三个DATETIME字段。


 
用wwwDBGrid控件吧!这样你可以任意在每个字段中加下拉选择框或者datetimeP啦
 
这问题前两天刚刚有人讨论过,查查吧!
用第三方控件也可,自己做也不难!
 
procedure TFmfilialinfo.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if (gdfocused in state) and (column.FieldName='出生年月') then
begin
DateTimePicker1.SetBounds(rect.Left + dbgrid1.Left + 1,rect.Top + dbgrid1.Top +1,
rect.Right - rect.Left ,rect.Bottom -rect.Top);
end;
end;

procedure TFmfilialinfo.DateTimePicker1CloseUp(Sender: TObject);
begin
adotable1.edit;
adotable1.fieldbyname('出生年月').value:=DateTimePicker1.datetime;
DateTimePicker1.Visible :=false;
end;

procedure TFmfilialinfo.DBGrid1ColEnter(Sender: TObject);
begin
if dbgrid1.Columns [dbgrid1.SelectedIndex ].FieldName ='出生年月' then
DateTimePicker1.Visible :=true
else
DateTimePicker1.Visible :=false;
end;

已经解决
 
用ehlib就自动可以这样做
 
后退
顶部