0

我想知道是否可以重置表格?我正在制作一个战斗游戏,但我需要在战斗后重置表格,这样我才能玩无限次战斗

也许有点像这样:

    If TextBox1.Text = "You Won!" Then
        Me.reset
    End If

当然,这不起作用,这就是我寻求帮助以重置表格的原因。谢谢!

4

4 回答 4

4

非常简单的解决方案是创建表单的一个新实例并关闭“已使用”的实例。项目+属性,关机模式设置极大地帮助了。将其更改为“当最后一个表单关闭时”。这使得这段代码工作:

If Me.TextBox1.Text = "You Won!" Then
    Dim frm = New Form1               '' Change the class name if necessary
    frm.Show()
    Me.Close()
End If
于 2013-11-05T01:45:13.350 回答
4

最简单的方法

从您要重置/重新启动的表单调用

---表格名称---

应用程序重启

我刷新

那会变魔术的。:)

于 2014-03-06T11:14:12.033 回答
1

当然,这不起作用,这就是我寻求帮助以重置表格的原因。谢谢!

没有内置的方法可以做到这一点。您需要Reset在表单上编写一个方法,该方法将遍历并将所有属性和值设置回其原始状态。

于 2013-11-05T00:18:17.260 回答
0

如果您想重置一个稍后可以从另一个表单重新打开的表单,您需要稍作调整:

Private Sub btnReset_Click(sender As Object, e As EventArgs) Handles btnReset.Click
        Dim f2 As New client1Form
        Me.Dispose()  '~~> Or Me.Close()
        f2.Show()
        starterForm.currentForm = f2
    End Sub
  • 我们制作新的表格,f2然后处理掉当前的表格。

 

  • 然后我们显示新f2表单并将currentForm( Dim currentForm As Form) 设置为等于新f2表单,这样当我们单击处理打开原始表单的按钮时client1Form,它将打开这个新表单f2而不是我们删除的旧表单Me.dispose()Me.Close().

 

  • 如果没有starterForm.currentForm = f2,当我们重新打开表单时,它只会为您提供您之前拥有的原件,包括任何剩余的数据(如果您使用过Me.Close())或原始表单的空版本(如果您使用过Me.Dispose())。但是我们想要新的表格和我们输入的任何数据。

 

  • 在父表单上,我们currentForm.Show()在打开表单按钮的点击事件上使用。
于 2017-06-26T10:41:30.100 回答