gpt4 book ai didi

vb.net - 使用字符串作为变量的名称

转载 作者:行者123 更新时间:2023-12-02 03:21:05 25 4
gpt4 key购买 nike

是否可以使用字符串作为变量的名称?例如..
我将 x 声明为私有(private) double

 Private TextBox1Store,TextBox2Store,TextBox3Store As Double

我将使用它作为存储值的变量。

此函数将标签和文本框中的数字相乘并返回乘积。

 Private Function mqtyCalc(ByVal y As Integer, ByVal z As Integer) As Integer
Dim w As Integer
w = y * z
Return w
End Function

这部分处理三个文本框事件。

 Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged, TextBox2.TextChanged, TextBox3.TextChanged
Dim tb As TextBox = sender
Dim tempObjNm As String
tempObjNm = tb.Name + "Strore"
tempObjNm = mqtyCalc(someVariable.Text, Label1.Text)
End Sub

这就是我想要解决的部分。

 tempObjNm = someVariable.Name + "Strore"
tempObjNm = mqtyCalc(tb.Text, Label1.Text)

“tempObjNm”在此子内部声明为字符串。
每次我在文本框中输入一个值时,该子程序都会获取已插入值的文本框的名称,并且该名称将在其末尾添加“Store”,以模仿上面声明的变量名称。例如,

temObjNm = TextBox1Store(模仿私有(private) TextBox1Store)
temObjNm 当前是由

声明的字符串
  Dim tempObjNm As String

作为字符串

这部分是sub的存储部分

 tempObjNm = mqtyCalc(tb.Text, 4)

(请注意 tempObjNm 的值 = "TextBox1Store"

当我打印 TextBox1Store 时,它​​打印 0

怎么样?是否不能使用字符串来模仿变量只是为了在其中存储值?

最佳答案

只需这样做:

Dim tb As TextBox = CType(sender, TextBox)
Me.Controls(tb.Name & "Store") = mqtyCalc(CInt(someVariable.Text), CInt(Label1.Text))

我强烈建议你几件事。首先,在项目属性中启用Option Strict On,因为它将改进您的编程实践。而且,正如您在我的代码中看到的,在 VB.NET 中使用 & 而不是 + 连接字符串。

关于vb.net - 使用字符串作为变量的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15356108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com