使用DateTimePicker控件实现日期连续输入

你有没有觉得这个控件在输入日期时不太方便? 输完年后还要按一下右键头才能定位到月,然后再按一下右键头定位到日,输完按回车或者TAB还不能转到下一输入控件,今天我就来解决这个问题:输入时让光标自动移动,比如四位年份输完了光标立即跳到MM上;输完按回车直接去到下一控件;如果是从另一个控件转入此控件,直接定位到月进行输入,因为通常年都不需要修改。以下是实现代码:

procedure TFrm_AjJg_Input.DateTimePicker_CHECKDATEChange(Sender: TObject);

begin

    keybd_event(vk_right,0,     KEYEVENTF_EXTENDEDKEY,     0);     //值改变时模拟一次右键头实现日期连续输入

end;

 

procedure TFrm_AjJg_Input.DateTimePicker_CHECKDATEKeyPress(Sender: TObject;

  var Key: Char);

begin

    if (key = #13) then

    begin

        Key   :=   #0;

        Edit_LIUTOU_TOTAL.SetFocus();

        //Keybd_Event(VK_TAB,   MapvirtualKey(VK_TAB,   0),   0,   0);

    end;

end;

 

procedure TFrm_AjJg_Input.ComboBox_SJCHECKUSERKeyPress(Sender: TObject;

  var Key: Char);

begin

    if (key = #13) then

    begin

        Key   :=   #0;

        Keybd_Event(VK_TAB,   MapvirtualKey(VK_TAB,   0),   0,   0);

        keybd_event(vk_right,0,     KEYEVENTF_EXTENDEDKEY,     0);  //直接将日期输入定位到月

    end;

end;

转载于:https://www.cnblogs.com/Mr-Xia/archive/2011/09/07/2169920.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值