我开始编写代码并学习VB.NET.到目前为止,它一帆风顺. 直到我尝试运行该程序. 我所做的是用我熟悉和理解的语言写了一个刽子手游戏.在C#中,代码完美无缺.一旦我完成了这个完成点,我可
直到我尝试运行该程序.
我所做的是用我熟悉和理解的语言写了一个刽子手游戏.在C#中,代码完美无缺.一旦我完成了这个完成点,我可以说没有其他任何我希望改变它,我开始手动转换为VB.NET.
到目前为止,没问题.但我刚刚完成转换,现在我遇到了障碍.
在窗口的底部是一个状态栏,告诉你你在哪个拼图集以及你正在使用哪个拼图.选择拼图时,这行代码会引发错误:
stsPuzzles.Text = "Puzzle: " + regionPuzzles + "/" + maxPuzzles
错误是:
Conversion from string "Puzzle" to type 'Double' is not valid.
当然,简单的答案是将这个机制拿出来,但至少为了测试目的,我想在那里,所以我可以确保正确的谜题在正确的集合.
有没有办法解决这个问题,所以我的两个整数变量可以在字符串中?或者有一个解决方法,我至少可以使用足够长的时间来测试其余的测试过程吗?
我希望找到一种解决方法,因为还有其他地方,比如显示统计数据,需要能够做到这一点.
对现有代码的直接修复是这样的:stsPuzzles.Text = "Puzzle: " + CStr(regionPuzzles) + "/" + CStr(maxPuzzles)
或这个:
stsPuzzles.Text = "Puzzle: " & regionPuzzles & "/" & maxPuzzles
在VB.Net中,&而不是连接运算符.通常仍然可以工作,但当操作数是数字时,它也倾向于认为你想要算术.
但在这种情况下我真正要做的是:
stsPuzzles.Text = String.Format("Puzzle: {0}/{1}", regionPuzzles, maxPuzzles)
或使用Visual Studio 2015或更高版本:
stsPuzzles.Text = $"Puzzle: {regionPuzzles}/{maxPuzzles}"