Vb.net 表格#加载不';不能在应用程序中执行
我不熟悉Visual Basic。我已安装Microsoft Visual Studio 2010。创建了一个新的Windows窗体应用程序。例如,我制作了一个简单的程序,要求最终用户输入两个数字,允许他们将第一个数字相加或减去第二个数字,并在文本框中显示输出 现在,我添加了另一个子例程,它将在Windows窗体加载时自动执行。这将计算输出文本框的宽度和表单宽度,并显示在底部 下面是代码现在的样子:Vb.net 表格#加载不';不能在应用程序中执行,vb.net,winforms,Vb.net,Winforms,我不熟悉Visual Basic。我已安装Microsoft Visual Studio 2010。创建了一个新的Windows窗体应用程序。例如,我制作了一个简单的程序,要求最终用户输入两个数字,允许他们将第一个数字相加或减去第二个数字,并在文本框中显示输出 现在,我添加了另一个子例程,它将在Windows窗体加载时自动执行。这将计算输出文本框的宽度和表单宽度,并显示在底部 下面是代码现在的样子: Public Class Form1 ' Run this Subroutine in
Public Class Form1
' Run this Subroutine initially to display the Form and Text box width
Private Sub Form_Load()
Label5.Text = TextBox3.Width
Label7.Text = Me.Width
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim a As Integer
Dim b As Integer
a = TextBox1.Text
b = TextBox2.Text
TextBox3.Text = a + b
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim a As Integer
Dim b As Integer
a = TextBox1.Text
b = TextBox2.Text
TextBox3.Text = a - b
End Sub
End Class
虽然加法和减法都能正常工作,但它不会在Windows窗体中显示窗体和输出文本框的宽度
我认为Form_Load()没有正确执行
我也试过,Form_Activate(),但也不起作用
一旦我能够做到这一点,我想扩展这个概念来调整输出文本框的大小以及表单的大小。然而,为了理解,我想看看我是否能成功地执行Form_Load()
谢谢。
表单加载不执行。现在,这只是其他任何方法。为了告诉VB使此方法处理Load
事件,您需要这样告诉它:
Private Sub Form_Load(sender As Object, e As EventArgs) Handles MyBase.Loasd
Label5.Text = TextBox3.Width
Label7.Text = Me.Width
End Sub
(并为事件添加所需的参数。)
其他几点意见:
- 确保始终在项目选项中启用“严格控制”
选项。这将使编译器对代码更加严格,并标记更多错误这是一件好事,因为这些错误是潜在的bug。特别是,您的代码在不同数据类型之间的转换非常松散,这些转换应该是显式的
Dim a As Integer = Integer.Parse(TextBox1.Text)
(还添加了显式转换。)Dock
属性,而无需手动编程表单加载不执行。现在,这只是其他任何方法。为了告诉VB使此方法处理Load
事件,您需要这样告诉它:
Private Sub Form_Load(sender As Object, e As EventArgs) Handles MyBase.Loasd
Label5.Text = TextBox3.Width
Label7.Text = Me.Width
End Sub
(并为事件添加所需的参数。)
其他几点意见:
- 确保始终在项目选项中启用“严格控制”
选项。这将使编译器对代码更加严格,并标记更多错误这是一件好事,因为这些错误是潜在的bug。特别是,您的代码在不同数据类型之间的转换非常松散,这些转换应该是显式的
Dim a As Integer = Integer.Parse(TextBox1.Text)
(还添加了显式转换。)Dock
属性,而无需手动编程您需要添加句柄,以便应用程序自动执行它:
Private Sub Form_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
'...
End Sub
您需要添加句柄,以便应用程序自动执行它:
Private Sub Form_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
'...
End Sub
非常感谢您提供的解决方案和提示。这将对我有所帮助。非常感谢你的解决方案和指点。这对我有帮助。