none
duas varaiveis para o form seguinte RRS feed

  • Pergunta

  • Boas

    Use o seguinte código para enviar um valor de variável para o segundo form.

    Mas só consigo enviar  uma variável.

    Como faço para envia duas variável.


    Public Class Form1
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim f As New Form2(teste)
            f.Show()
        End Sub
    End Class

        

    Public Class Form2
    Private eq As String
        Public Sub New(ByVal texto As String)
            ' Obrigatorio no Construtor do Form...
            InitializeComponent()
            ' Aqui eu pego o valor que me foi passado como parametro e guardo na variavel que foi declarada no escopo da classe
            eq = texto
        End Sub
        Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            MsgBox(eq)
        End Sub

    End Class

    obrigado


    Visual Basic 2008 Express Edition SQL Server Management Studio flashedr8@gmail.com

    segunda-feira, 2 de abril de 2012 14:04

Respostas

  • Olá Flashed,

    Você tem duas opções,

    Ou você modifica o seu construtor atual,

    ou você cria outro construtor que receba dois parâmetros.

    Public Sub New(ByVal texto As String, ByVal  OutraVariavel as String)
            InitializeComponent()
    End Sub

    att


    • Editado Vanderney Souza segunda-feira, 2 de abril de 2012 14:36 Inserindo código
    • Marcado como Resposta Jonas São Paulo segunda-feira, 2 de abril de 2012 15:10
    segunda-feira, 2 de abril de 2012 14:33
  • Só foi um exemplo

    mas pra ficar em vb net:

    Public Class Form1
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim f As New Form2(teste)
            Dim g As New Form2(teste, teste2)
            Dim h As New Form2(teste, teste2, teste3)
    
            f.Show()
            g.Show()
            h.Show()
           
    
        End Sub
    End Class
    
        
    Public Class Form2
    Private eq As String
        Public Sub New(ByVal texto As String)
            ' Obrigatorio no Construtor do Form...
            InitializeComponent()
            ' Aqui eu pego o valor que me foi passado como parametro e guardo na variavel que foi declarada no escopo da classe
            eq = texto
        End Sub
        Public Sub New(ByVal texto As String, ByVal OutraVariavel As String)
            InitializeComponent()
        End Sub
        Public Sub New(ByVal texto As String, ByVal OutraVariavel As String, ByVal MaisOutraVariavel As String)
            InitializeComponent()
         End Sub
        Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            MsgBox(eq)
        End Sub
    End Class



    segunda-feira, 2 de abril de 2012 15:04

Todas as Respostas

  • Olá Flashed,

    Você tem duas opções,

    Ou você modifica o seu construtor atual,

    ou você cria outro construtor que receba dois parâmetros.

    Public Sub New(ByVal texto As String, ByVal  OutraVariavel as String)
            InitializeComponent()
    End Sub

    att


    • Editado Vanderney Souza segunda-feira, 2 de abril de 2012 14:36 Inserindo código
    • Marcado como Resposta Jonas São Paulo segunda-feira, 2 de abril de 2012 15:10
    segunda-feira, 2 de abril de 2012 14:33
  • qual a mais eficaz? e como? 

    obrigado


    Visual Basic 2008 Express Edition SQL Server Management Studio flashedr8@gmail.com

    segunda-feira, 2 de abril de 2012 14:36
  • Isso depende de sua necessidade,

    se em algum caso você precisar de passar apenas uma variável e em outro 

    duas seria necessário sobrescrever o construtor, caso contrário só modifique 

    como sugeri na resposta a cima.

    segunda-feira, 2 de abril de 2012 14:39
  • posso modificar para passar 3 variáveis?

    obrigado


    Visual Basic 2008 Express Edition SQL Server Management Studio flashedr8@gmail.com

    segunda-feira, 2 de abril de 2012 14:45
  • Para quantas forem necessárias.

    Esse exemplo ta em c# mais da pra você ter uma idéia

    http://social.msdn.microsoft.com/Forums/pt/vscsharppt/thread/2bfbc82b-53fe-4042-9b70-6c353139c5a4

    segunda-feira, 2 de abril de 2012 14:49
  • hummm

    esse construtor é diferente do meu...

    obrigado


    Visual Basic 2008 Express Edition SQL Server Management Studio flashedr8@gmail.com

    segunda-feira, 2 de abril de 2012 14:54
  • Só foi um exemplo

    mas pra ficar em vb net:

    Public Class Form1
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim f As New Form2(teste)
            Dim g As New Form2(teste, teste2)
            Dim h As New Form2(teste, teste2, teste3)
    
            f.Show()
            g.Show()
            h.Show()
           
    
        End Sub
    End Class
    
        
    Public Class Form2
    Private eq As String
        Public Sub New(ByVal texto As String)
            ' Obrigatorio no Construtor do Form...
            InitializeComponent()
            ' Aqui eu pego o valor que me foi passado como parametro e guardo na variavel que foi declarada no escopo da classe
            eq = texto
        End Sub
        Public Sub New(ByVal texto As String, ByVal OutraVariavel As String)
            InitializeComponent()
        End Sub
        Public Sub New(ByVal texto As String, ByVal OutraVariavel As String, ByVal MaisOutraVariavel As String)
            InitializeComponent()
         End Sub
        Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            MsgBox(eq)
        End Sub
    End Class



    segunda-feira, 2 de abril de 2012 15:04
  • Beleza :)

    Isto de importar variáveis dá muito jeito.

    Obrigado a todos


    Visual Basic 2008 Express Edition SQL Server Management Studio flashedr8@gmail.com

    segunda-feira, 2 de abril de 2012 15:13