多列组合框和日期数据类型

时间:2012-07-22 23:59:21

标签: vb.net visual-studio-2010 visual-studio date combobox

我正在尝试制作一个计算某人清醒时间的程序。用户只需要输入他醒来的时间。但我遇到了两个问题:

  1. 我需要制作一个组合框供用户在PM和AM之间进行选择,但我不知道如何制作一个有多列的组合框。

  2. 如何使用Date类型变量进行计算?因为我需要获取当前时间并在用户醒来时减去。

  3. 以下是现在的代码:

    Public Class Form1
        Dim wokeup As Date
        Dim now As Date
        Dim awake As Date
    
        Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
            now = DateAndTime.TimeOfDay
            ComboBox1.Text = "AM"
    
    
        End Sub
        Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
            wokeup = TextBox1.Text
            Label2.Text = wokeup
    
        End Sub
    End Class
    

1 个答案:

答案 0 :(得分:0)

1)我不确定“多列”是什么意思,但我猜你只需要用户在上午和下午之间做出选择。

Combobox1.Items.Add("AM")
Combobox1.Items.Add("PM")
Combobox1DropDownStyle = ComboBoxStyle.DropDownList 

2)要减去时间间隔,您可以使用以下内容:

Dim timeAwake as TimeSpan = Date.Now.Subtract(CDate(Textbox1.Text))

如果文本框仅包含时间,则可能需要在Textbox1.Text前添加当前日期。从timeAwake开始,您可以使用timeAwake.TotalHours清除总小时数。