2017-04-24 76 views
-4

是否可以使用标签?我计划展示一个评分系统,就像每个正确答案一样,评分会增加10分。如何将整数值传递给其他表单?

+0

看一看https://www.youtube.com/watch?v=RAAxqTK1W-k – AbdulAziz

+0

将它传递给您的窗体的构造函数... – Codexer

+1

请阅读[问]并参加[tour],因为这是问得不好。 – Plutonix

回答

-1

例如 添加两种形式的项目 在Form2的定义Label1的控制 在Form1中

Public Class Form1 
    Private intScore As Integer = 0 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load 
     Form2.Show() 
    End Sub 

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
     Form2.Label1.Text = intScore.ToString 
    End Sub 
End Class 
0

在你的窗体2添加一个公众共享的整数

Public Shared score As Integer = 0 

Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load 

End Sub 

然后在Form1中通过增加它加入它

Form2.score += 50 
+0

...然后呢? – djv

+0

OP说他想做一个评分系统,现在他有一个可以通过两种形式访问的分数,所以他可以以第二种形式显示它或做任何事情。 – EuX0

1

在表单中使用类的实例。表格可以调用类的方法。该类可以向表单提交事件。不要直接与班级谈话。或从一个表单转移到另一个表单

Form1中与TextBox1的:

Public Class Form1 

    Private myClass1 As Class1 
    Private myForm2 As Form2 

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
     myClass1 = New Class1() 
     myForm2 = New Form2(myClass1) 
     myForm2.Show() 

    End Sub 

    Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged 
     myClass1.SetText(TextBox1.Text) 
    End Sub 

End Class 

与窗体2的Label1:

Public Class Form2 

    Private WithEvents myClass1 As Class1 

    Public Sub New(instance As Class1) 
     InitializeComponent() 
     myClass1 = instance 
    End Sub 

    Private Sub myClass1TextSet(value As String) Handles myClass1.TextSet 
     Me.Label1.Text = value 
    End Sub 

End Class 

的Class1:

Public Class Class1 

    Private text As String = "" 

    Public Event TextSet(value As String) 

    Public Sub SetText(value As String) 
     Me.text = value 
     RaiseEvent TextSet(value) 
    End Sub 

End Class 

如您在Form1.TextBox1键入Form2.Label1将更新。您可以根据自己的需要更改它,但请尽量保留此结构。

表格>> >>实例类

类>> >>事件表格

的形式实例化所述另一种形式是用于本实施例的简单性。较大规模的项目可能会有一个表单装载机工厂负责制作表单。

+0

@ Zaggler当我发布这个答案时,没有任何**链接**。 **相关的**问题(包括一个被提名为重复的问题)不适用,因为“每个正确答案的分数将增加10点”可能不适用于单次构造函数解决方案。无论如何,你还记得哪一个? – djv

相关问题