0

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

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

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

这是现在的代码:

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
4

1 回答 1

0

1)我不确定您所说的“多列”是什么意思,但我猜您只需要用户在 AM 和 PM 之间进行选择。

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.

于 2012-07-23T03:07:57.630 回答