目前正处于“自我教学”的过程中,视觉基础为基本问题道歉。
也许我这样做是错误的,但我希望使用btnTA_StartLog来创建一个文件,并激活Timer1在指定的时间间隔内记录数据。outlog的问题只在btnTA_startLog中定义,而在其他两个子中没有定义。如何使最近声明的outlog公开,并使其他子类可以访问?
Public Sub btnTA_StartLog_Click(sender As Object, e As EventArgs) Handles btnTA_StartLog.Click
Dim file As String = GetFileName(False, "csv", "Data Output")
Dim outlog As IO.StreamWriter = My.Computer.FileSystem.OpenTextFileWriter(file, True)
Timer1.Start()
btnTA_StartLog.Enabled = False
btbTA_LoggingStop.Enabled = True
End Sub
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
outlog.WriteLine(CStr(DateTime.Now) & "," & CStr(txbTA_Delivered_ml.Text) & "," & CStr(MyTC.Data.Temperature))
End Sub
Private Sub btbTA_LoggingStop_Click(sender As Object, e As EventArgs) Handles btbTA_LoggingStop.Click
Timer1.Stop()
outlog.Close()
End Sub发布于 2022-03-02 00:24:59
它必须是在班级水平的方式或其他方式。
Private outlog As IO.StreamWriter
Public Sub btnTA_StartLog_Click(sender As Object, e As EventArgs) Handles btnTA_StartLog.Click
Dim file As String = GetFileName(False, "csv", "Data Output")
outlog = My.Computer.FileSystem.OpenTextFileWriter(file, True)
Timer1.Start()
btnTA_StartLog.Enabled = False
btbTA_LoggingStop.Enabled = True
End Sub
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
outlog.WriteLine(CStr(DateTime.Now) & "," & CStr(txbTA_Delivered_ml.Text) & "," & CStr(MyTC.Data.Temperature))
End Sub
Private Sub btbTA_LoggingStop_Click(sender As Object, e As EventArgs) Handles btbTA_LoggingStop.Click
Timer1.Stop()
outlog.Close()
End Sub我用的是私人土地,但可能是私人财产。它可以包含在类级别引用的另一个对象中。
发布于 2022-03-01 23:30:08
我不是vb.net的人,所以我不知道确切的语法,但是c#的规则是一样的,我也知道。
在表单级别定义outlog (在任何函数之外),这样所有函数都可以使用它。
https://stackoverflow.com/questions/71315768
复制相似问题