执行代码N次VB.Net

时间:2017-02-25 17:09:54

标签: vb.net

所以我想执行一些代码N次。 N是文本框的值(例如:12)。

我不知道如何做到这一点,但我想到的是这样的事情:

For Each i as 1 in textbox1.text
  'some code
Next

dim num1 as integer = 0
While num1 < textbox1.text
  'some code
  num1 += 1
Next

这些只是我脑海中的一些想法,当我谈到这个问题时,以上都没有经过测试或尝试编码。

有什么想法吗?感谢。

3 个答案:

答案 0 :(得分:2)

首先,打开Option Strict。通过将可能的运行时错误转换为编译器错误,这将为您节省时间。在代码文件的顶部:

Option Strict On

也可以为整个项目设置:
项目属性 - &gt; 编译标签 - &gt; 选项严格选择器:开启

您还可以通过以下方式将其设为所有新项目的默认项目:
工具 - &gt; 选项 - &gt; 项目和解决方案 - &gt; VB默认

它做什么

TextBox.Text总是包含文本(因此是聪明的名字)。 "12"只是一个字符串,与12不同。因此,在使用它之前,需要将字符串转换为整数。 注意:如果您想将用户输入限制为数字,请考虑使用NumericUpDown

有几种转换方式,但考虑到数据来自用户,我们必须允许他们输入"I like pie"而不是数字。因此,我们希望使用最安全的方法,在本例中为Integer.TryParse

' declare int var to hold the result
Dim LoopCount As Integer
If Integer.TryParse(TextBox132.Text, LoopCount) Then
    ' success!  LoopCOunt contains the integer value of the Text control

    For n As Integer = 0 To LoopCount - 1
       ' some code to do something
    Next
Else
    ' failed - scold the user with a MessageBox
End if

代码中的注释说明,但首先声明一个整数变量来保存转换后的值。 Integer.TryParse是一个返回True/False的函数。如果成功,您的变量将保持整数值。

请参阅 Converting DataTypes for Option Strict 了解其他适用的转化方法和案例。

答案 1 :(得分:0)

这可能有用,我没试过:

Dim repeat_times as Integer = 0
    Do Until repeat_times = 10 'times you want to repeat
    repeat_times = repeat_times + 1
    Console.WriteLine("Hello World") 'or anything you want
    Loop

答案 2 :(得分:-1)

```{r results='asis'} library(pander) panderOptions('knitr.auto.asis', FALSE) tmp = function() { pander('A') pander('B') pander('C') } tmp() ``` 是我的问题的答案。