【问题标题】:vb.net date of the day after every 24 hoursvb.net 每 24 小时后的日期
【发布时间】:2017-08-10 06:23:11
【问题描述】:

我有一个计时器,它会在每 86400000 秒(每 24 小时,因此每天)之后打勾,以将新的一天放入 DateTimePicker,dtPicker1。不幸的是,在计时器滴答作响后,除了日期之外,结果还会带来一天中的时间(例如 2017-03-18 00:00:05,而不是 2017-03-18 。当我使用消息框检查输出时,我得到没有时间但第二天的日期(在计时器滴答后,它会添加时间,因此代码失败。

`'tick 每 86400000 毫秒(一天) dtPicker1.Enabled = True

    dtPicker1.Text = ""
    Dim mFmt As String = "yyyy-MM-dd"
    dtPicker1.Format = DateTimePickerFormat.Custom
    dtPicker1.CustomFormat = mFmt


    dtPicker1.Text = ""

    Dim st As Date = Today.AddDays(-1).ToShortDateString

    Dim cf As String = Today.AddDays(-1)
    Dim dr As String = cf.Substring(3, 2)
    'MsgBox(dr)
    Dim de As String = cf.Substring(6, 4)
    Dim fg As String = cf.Substring(3, 2)
    Dim ab As String = cf.Substring(0, 2)

    'MsgBox(de & "-" & fg & "-" & ab, vbInformation, "Here you Go")

    dtPicker1.Value = de & "-" & fg & "-" & ab`

我们将不胜感激。

【问题讨论】:

  • 您无需将DateTime 类型转换为字符串即可访问日、月、年、时、分、秒、毫秒。检查它的属性

标签: vb.net date timer datetimepicker


【解决方案1】:

不需要使用子字符串,可以直接将值设置为日期。

    dtPicker1.Text = ""
    Dim mFmt As String = "yyyy-MM-dd"
    dtPicker1.Format = DateTimePickerFormat.Custom
    dtPicker1.CustomFormat = mFmt
    dtPicker1.Value = Today.AddDays(-1)

【讨论】:

  • 我需要选择昨天的日期,然后我将不得不使用 AddDays(-1)。
  • 那么就是 Today.AddDays(-1).ToString()
  • 你为什么要转换成字符串?只需检查 DateTime 本身的属性即可。
  • 感谢大家。你说的是哪个字符串?是 mfmtcfdrdefg ab?你会建议我使用哪种数据类型?我们将不胜感激。
  • 谢谢,@obl。 dtPicker1.value = Today.AddDays(-1).ToString(yyyy-MM-dd) 除了 date 之外还给出了 time,而我只需要日期。也感谢您的帮助。
猜你喜欢
  • 2018-12-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-18
  • 1970-01-01
  • 2016-05-09
  • 1970-01-01
相关资源
最近更新 更多