在visual basic .net中可以使用label1.text作为timer1.interval的值吗?
我已尝试过以下操作,不幸的是它无法正常工作。
Dim Try_Interval As Integer = My.Settings.Error_Millisec
Int32.TryParse(frmSettings.Lbl_Error_Millisec_Fin.Text, Try_Interval)
它说
未处理的类型' System.ArgumentOutOfRangeException'发生在System.Windows.Forms.dll
中其他信息:价值' 0'不是Interval的有效值。 间隔必须大于0.
我也尝试将其存储在my.settings中,如下面的代码
Dim Try_Max As Integer = Convert.ToDouble(My.Settings.Error_Try)
Dim Try_Interval As Integer = My.Settings.Error_Millisec
有什么建议吗?
答案 0 :(得分:2)
Int32.TryParse
初始化int参数,它可以成功解析字符串Int32
,否则它将为0.因此,无法解析字符串,因为格式无效或者是{{1} }。它的价值是什么?
值frmSettings.Lbl_Error_Millisec_Fin.Text为0,请注意 我从另一种形式那里拿走了它。
Int32指定Tick事件之前的毫秒数 相对于Tick事件的最后一次出现而引发。价值 不能少于一个。
因此请指定"0"
的值。
答案 1 :(得分:1)
您可以按如下方式设置间隔:
Dim timerValue As Integer
Integer.TryParse(timerLabel.Text, timerValue)
Timer1.Interval = timerValue