我正在Visual Studio中制作一个可视化的基本程序,其中会显示相当多的表单。然而,它们都是一堆弹出的,只有一些是可见的。我想知道是否有办法在两个数字之间生成一个随机整数,然后将其设置为New Form1
的位置。
现在我有这个:
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Dim more As New Form1
(Code for generating random number from 1 to 999)
(Code for generating new random number from 1 to 999)
more.Location = New Point(random number, new random number)
more.Show()
time = 10
End Sub
答案 0 :(得分:0)
所以你应该可以使用它。基本上,它允许您设置上限和下限,然后将其设置为x和y坐标。我特别没有声明x和y变量。
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Dim more As New Form1
Dim upperLimit As Integer
Dim lowerLimit As Integer
lowerLimit = 1
upperLimit = 999
x = Int ((upperLimit - lowerLimit + 1) * Rnd + lowerLimit)
y = Int ((upperLimit - lowerLimit + 1) * Rnd + lowerLimit)
more.Location = New Point(x, y)
more.Show()
time = 10
End Sub
答案 1 :(得分:0)
这种方式更容易
Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick
Dim more As New Form1
Dim rn As New Random
more.Location = New Point(rn.Next(0, 999), rn.Next(0, 999))
more.Show()
time = 10
End Sub
这是可以使用所有屏幕空间的代码
Dim rn As New Random
Dim mxw As Integer = My.Computer.Screen.Bounds.Width - Me.Width
Dim mxh As Integer = My.Computer.Screen.Bounds.Height - (Me.Height + 29 + 38)
Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick
Dim more As New Form1
more.Show()
more.Location = New Point(rn.Next(0, mxw), rn.Next(0, mxh))
time = 10
End Sub
好的,我不会真正了解new
随机数的含义,所以如果这不能解决你的问题,请更好地解释一下。