Boton predeterminado "AcceptButon"
Publicado por Tony (3 intervenciones) el 03/06/2014 03:51:14
Buenas noches a todos.
Alguien me podría ayudar.
En el código que dejo en la parte de abajo me causa problema, es un programa en visual basic, que está escrito en un editor de texto, el problema que tengo es que intente agregar un botón predeterminado, se compila bien el programa, pero no se ejecuta y aparece lo siguiente.
Excepción no controlada: System.InvalidCastException: No se puede convertir un objeto de tipo 'System.String' al tipo 'System.Windows.Forms.IButtonControl'.
en Form1.IniciarComponentes()
en Form1..ctor()
en Form1.Main()
Pueden ayudarme, se los agradesco.
Supongo que ya notaron que soy novato.
===========================================================================================
Imports System
Imports System.Windows.Forms
Imports System.Drawing
Public Class Form1 : Inherits Form
Private WithEvents lblGradosC As Label
Private WithEvents lblGradosF As Label
Private WithEvents txbGradosC As TextBox
Private WithEvents txbGradosF As TextBox
Private WithEvents btAceptar As Button
Public Sub New()
MyBase.New()
IniciarComponentes()
End Sub
Public Sub IniciarComponentes()
'
'lblGradosC
'
lblGradosC = New Label()
lblGradosC.Size = New Size(115, 14)
'( X , Y)
lblGradosC.Name = "lblGradosC"
lblGradosC.Text = "Grados Centigrados"
lblGradosC.Font = New Font("Arial", 9, FontStyle.regular)
lblGradosC.TextAlign = ContentAlignment.MiddleCenter
lblGradosC.Location = New Point( 1, 35)
lblGradosC.Tabindex = 4 '( X, Y )
Controls.Add(lblGradosC)
'
'lblGradosF
'
lblGradosF = New Label()
lblGradosF.Size = New Size(108, 14)
'( X , Y )
lblGradosF.Name = "lblGradosF"
lblGradosF.Text = "Grados Fahrenheit"
lblGradosF.Font = New Font("Arial", 9, FontStyle.regular)
lblGradosF.TextAlign = ContentAlignment.MiddleCenter
lblGradosF.Location = New Point( 1, 76)
'( X, Y )
lblGradosF.Tabindex = 3
Controls.Add(lblGradosF)
'
'txbGradosC
'
txbGradosC = New TextBox()
txbGradosC.Size = New Size(110, 15)
'( X, Y )
txbGradosC.Name = "txbGradosG"
txbGradosC.Text = "0.00"
txbGradosC.TextAlign = HorizontalAlignment.Right
txbGradosC.Location = New Point(130, 30)
txbGradosC.Tabindex = 1
Controls.Add(txbGradosC)
'
'txbGradosF
'
txbGradosF = New TextBox()
txbGradosF.Size = New Size(110, 15)
'( X, Y )
txbGradosF.Name = "txbGradosF"
txbGradosF.Text = "32.00"
txbGradosF.TextAlign = HorizontalAlignment.Right
txbGradosF.Location = New Point(130, 70)
txbGradosF.Tabindex = 1 '( X , Y )
Controls.Add(txbGradosF)
'
'btAceptar
'
btAceptar = New Button()
btAceptar.Size = New Size(70, 25)
'( X, Y )
btAceptar.Name = "btAceptar"
btAceptar.Text = "&Aceptar"
btAceptar.Font = New Font("Arial", 9, FontStyle.regular)
btAceptar.TextAlign = ContentAlignment.MiddleCenter
btAceptar.UseMnemonic = True
btAceptar.Location = New Point(95, 110)
Controls.Add(btAceptar) '( X, Y )
ClientSize = New Size(250, 150)
Name = "Form1"
Text = "Conversion de temperatura"
AcceptButton = "btAceptar"
End Sub
Protected Overloads Overrides Sub Dispose(eliminar As Boolean)
If eliminar Then
'Liberar recursos
End If
MyBase.Dispose(eliminar)
End Sub
Public Shared Sub Main()
Application.Run(New Form1())
End Sub
End Class
Alguien me podría ayudar.
En el código que dejo en la parte de abajo me causa problema, es un programa en visual basic, que está escrito en un editor de texto, el problema que tengo es que intente agregar un botón predeterminado, se compila bien el programa, pero no se ejecuta y aparece lo siguiente.
Excepción no controlada: System.InvalidCastException: No se puede convertir un objeto de tipo 'System.String' al tipo 'System.Windows.Forms.IButtonControl'.
en Form1.IniciarComponentes()
en Form1..ctor()
en Form1.Main()
Pueden ayudarme, se los agradesco.
Supongo que ya notaron que soy novato.
===========================================================================================
Imports System
Imports System.Windows.Forms
Imports System.Drawing
Public Class Form1 : Inherits Form
Private WithEvents lblGradosC As Label
Private WithEvents lblGradosF As Label
Private WithEvents txbGradosC As TextBox
Private WithEvents txbGradosF As TextBox
Private WithEvents btAceptar As Button
Public Sub New()
MyBase.New()
IniciarComponentes()
End Sub
Public Sub IniciarComponentes()
'
'lblGradosC
'
lblGradosC = New Label()
lblGradosC.Size = New Size(115, 14)
'( X , Y)
lblGradosC.Name = "lblGradosC"
lblGradosC.Text = "Grados Centigrados"
lblGradosC.Font = New Font("Arial", 9, FontStyle.regular)
lblGradosC.TextAlign = ContentAlignment.MiddleCenter
lblGradosC.Location = New Point( 1, 35)
lblGradosC.Tabindex = 4 '( X, Y )
Controls.Add(lblGradosC)
'
'lblGradosF
'
lblGradosF = New Label()
lblGradosF.Size = New Size(108, 14)
'( X , Y )
lblGradosF.Name = "lblGradosF"
lblGradosF.Text = "Grados Fahrenheit"
lblGradosF.Font = New Font("Arial", 9, FontStyle.regular)
lblGradosF.TextAlign = ContentAlignment.MiddleCenter
lblGradosF.Location = New Point( 1, 76)
'( X, Y )
lblGradosF.Tabindex = 3
Controls.Add(lblGradosF)
'
'txbGradosC
'
txbGradosC = New TextBox()
txbGradosC.Size = New Size(110, 15)
'( X, Y )
txbGradosC.Name = "txbGradosG"
txbGradosC.Text = "0.00"
txbGradosC.TextAlign = HorizontalAlignment.Right
txbGradosC.Location = New Point(130, 30)
txbGradosC.Tabindex = 1
Controls.Add(txbGradosC)
'
'txbGradosF
'
txbGradosF = New TextBox()
txbGradosF.Size = New Size(110, 15)
'( X, Y )
txbGradosF.Name = "txbGradosF"
txbGradosF.Text = "32.00"
txbGradosF.TextAlign = HorizontalAlignment.Right
txbGradosF.Location = New Point(130, 70)
txbGradosF.Tabindex = 1 '( X , Y )
Controls.Add(txbGradosF)
'
'btAceptar
'
btAceptar = New Button()
btAceptar.Size = New Size(70, 25)
'( X, Y )
btAceptar.Name = "btAceptar"
btAceptar.Text = "&Aceptar"
btAceptar.Font = New Font("Arial", 9, FontStyle.regular)
btAceptar.TextAlign = ContentAlignment.MiddleCenter
btAceptar.UseMnemonic = True
btAceptar.Location = New Point(95, 110)
Controls.Add(btAceptar) '( X, Y )
ClientSize = New Size(250, 150)
Name = "Form1"
Text = "Conversion de temperatura"
AcceptButton = "btAceptar"
End Sub
Protected Overloads Overrides Sub Dispose(eliminar As Boolean)
If eliminar Then
'Liberar recursos
End If
MyBase.Dispose(eliminar)
End Sub
Public Shared Sub Main()
Application.Run(New Form1())
End Sub
End Class
Valora esta pregunta


0