vb.net - 我可以在 VisualBasic 的 TextBox 中显示 Select Case 的结果吗?
问题描述
我目前正在为学校项目创建代码。任务是为教师创建一个非常基本的标记簿系统。我正在使用“选择案例”来确定学生在考试中获得的百分比。
我当前的问题是,在此代码中,我将输出信息显示到显示框中,但实际上我需要将其放入文本框或标签中。当我尝试更改为其中任何一种形式时,都会出现错误。
我可以用什么替换 lsbResults.Items.Add 行,以便后面的信息出现在文本框或标签中?
Public Sub Grades()
Select Case Percentage
Case 0 To 49
lsbResults.Items.Add(StudentName & "'s" & " grade is a participation" & " (" & Percentage & "%)")
Case 50 To 59
lsbResults.Items.Add(StudentName & "'s" & " grade is a Pass" & " (" & Percentage & "%)")
Case 60 To 74
lsbResults.Items.Add(StudentName & "'s" & " grade is a Credit" & " (" & Percentage & "%)")
Case 75 To 89
lsbResults.Items.Add(StudentName & "'s" & " grade is a Distiction" & " (" & Percentage & "%)")
Case 90 To 100
lsbResults.Items.Add(StudentName & "'s" & " grade is a High Distinction" & " (" & Percentage & "%)")
End Select
End Sub
解决方案
除非您Grades
从另一个班级打电话,否则它可以是Private Sub
. 我添加了Percentage
和StudentName
作为Grades
方法的参数,以使类级变量变得不必要。如果此数据可用作类级别变量,则不需要参数。
为了避免重复代码,我只更改了 Select Case 中的一个单词。
我在引号前使用了一个由 $ 指示的插值字符串。这使您可以将括在大括号中的变量准确地放置在它们将出现在最终文本中的位置。我vbCrLf
在字符串末尾添加了一个新行。
该.AppendText
方法会将新字符串添加到文本框中,而不会删除已经存在的内容。确保您的文本框.Multiline
在设计器中设置为 true。
Private Sub Grades(Percentage As Integer, StudentName As String)
Dim GradeWord As String = ""
Select Case Percentage
Case 0 To 49
GradeWord = "participation"
Case 50 To 59
GradeWord = "Pass"
Case 60 To 74
GradeWord = "Credit"
Case 75 To 89
GradeWord = "Distiction"
Case 90 To 100
GradeWord = "High Distinction"
Case Else
GradeWord = "No Grade"
End Select
TextBox1.AppendText($"{StudentName}'s grade is {GradeWord} ({Percentage}%){vbCrLf}")
End Sub
如果您使用的是 2015 之前的 Visual Studio 版本,那么您将需要使用String.Format
TextBox1.AppendText(String.Format("{0}'s grade is {1} ({2}%){3}", StudentName, GradeWord, Percentage, vbCrLf))
推荐阅读
- c - C中最快的服务器
- r - 在 macos big sur m1 的 shell 脚本中找不到别名
- nlp - 使用手套向量比较两个语句之间的相似性时的关键错误
- flutter - 如何在flutter中上传和下载图像到ftp服务器?
- javascript - 动态模式不适用于 Laravel Yajra 数据表操作按钮
- javascript - Google Geocode API 返回不同的结果然后“google.maps.Geocoder”
- javascript - 混合精度算术:大整数尾数的大浮点除法算法?
- javascript - 如何使用 Express.js 和 Passport.js 重置 Oauth 身份验证批准
- karate - Java 堆空间错误,用于响应具有巨大负载的响应 | 空手道 1.0.1
- reactjs - 如何修复上游依赖错误?我试过做 npm install --legacy-peer-deps 和 npm install --force 但这会导致进一步的问题