DOIS FORMS QUE NAO SE FALAM !
Bom dia, Colegas!
De fato, existem vários artigos na WEB, explicando como abrir formulários.
No entanto, estou com dificuldade de usar um modo de abrir formulários
de um modo , que eu possa a qualquer momento fazer coisas como:
Executar uma função que esta em outro Form, ou mesmo transferir dados
de um Form para outro.
Imagine, uma situação super comum: (VB.NET)
Eu tenho um Formulário de cadastro de Cliente (FrmCliente). Preciso abrir um formulário
a partir deste com uma pequena tela para o usuário digitar o que deseja pesquisar (FrmPesquisar).
O usuário digita numa caixa de texto o que deseja e clica em Confirmar
Agora preciso que ao clicar no Confirmar, meu código execute uma função (PesquisaCliente)
que esta no formulário FrmCliente.Repare que não irei abrir novamente o FrmCliente.Ele já esta
aberto.Sendo assim..........
1.) Como deve ficar o código, para abrir o FrmPesquisar ????
2.) Como fica o código, que devo colocar no botão Confirmar de FrmPesquisar,me permite Capturar
o que foi digitado no Form FrmPesquisar e executar a função PesquisarCliente que esta em FrmCliente,
para preencher os campos de FrmCliente????
Algum colega pode esclarecer????
De fato, existem vários artigos na WEB, explicando como abrir formulários.
No entanto, estou com dificuldade de usar um modo de abrir formulários
de um modo , que eu possa a qualquer momento fazer coisas como:
Executar uma função que esta em outro Form, ou mesmo transferir dados
de um Form para outro.
Imagine, uma situação super comum: (VB.NET)
Eu tenho um Formulário de cadastro de Cliente (FrmCliente). Preciso abrir um formulário
a partir deste com uma pequena tela para o usuário digitar o que deseja pesquisar (FrmPesquisar).
O usuário digita numa caixa de texto o que deseja e clica em Confirmar
Agora preciso que ao clicar no Confirmar, meu código execute uma função (PesquisaCliente)
que esta no formulário FrmCliente.Repare que não irei abrir novamente o FrmCliente.Ele já esta
aberto.Sendo assim..........
1.) Como deve ficar o código, para abrir o FrmPesquisar ????
2.) Como fica o código, que devo colocar no botão Confirmar de FrmPesquisar,me permite Capturar
o que foi digitado no Form FrmPesquisar e executar a função PesquisarCliente que esta em FrmCliente,
para preencher os campos de FrmCliente????
Algum colega pode esclarecer????
Faço um apelo aos colegas, que trabalham com VB.NET!
Alguém deve saber como fazer isto !!!!!
é uma situação comum de mais......que surge a todo momento ao fazer-mos um cadastro.
Algum colega pode esclarecer????????????????
Alguém deve saber como fazer isto !!!!!
é uma situação comum de mais......que surge a todo momento ao fazer-mos um cadastro.
Algum colega pode esclarecer????????????????
Veja esse exemplo... A idéia é criar classes para conversar com os Formulário.
Nesse exemplo criei uma variável publica e a coloquei em um módulo, mas a classe pode ser instanciada através de parâmetros.
JONA, obrigado por responder. Mas, o exemplo que deixou explica com transferir uma
informação de um Form para outro ( Usando propiedades). O problema é que preciso
executar um método ( PesquisarCliente ) que esta em outro formulário.Ou seja:
1.) Eu tenho dois Formulários: Form1 e Form2
2.) Em Form1 , eu tenho um método chamado [ô]PesquisarCliente[ô]
2. A partir de Form1 , tenho um botão (BtnAbrirForm2) que exibe Form2
3.) Em Form2 tenho uma caixa de texto (TxtCliente) e um Botão (BtnPesquisar)
4.) Quando digitar em Form2, o cliente a ser pesquisado e clicar no botão (BtnPesquisar) tenho de executar o método [ô]PesquisarCliente[ô],
informando o nome do cliente a ser pesquisado.
A questão é simples:
Como executar o método [ô]PesquisarCliente[Ô] , do Form1, a partir do Form2?
Obs: O form1, que abriu form2 tem estará aberto obviamente.
Socorro, não acredito que ninguém tenha passado por este problema!!!
informação de um Form para outro ( Usando propiedades). O problema é que preciso
executar um método ( PesquisarCliente ) que esta em outro formulário.Ou seja:
1.) Eu tenho dois Formulários: Form1 e Form2
2.) Em Form1 , eu tenho um método chamado [ô]PesquisarCliente[ô]
2. A partir de Form1 , tenho um botão (BtnAbrirForm2) que exibe Form2
3.) Em Form2 tenho uma caixa de texto (TxtCliente) e um Botão (BtnPesquisar)
4.) Quando digitar em Form2, o cliente a ser pesquisado e clicar no botão (BtnPesquisar) tenho de executar o método [ô]PesquisarCliente[ô],
informando o nome do cliente a ser pesquisado.
A questão é simples:
Como executar o método [ô]PesquisarCliente[Ô] , do Form1, a partir do Form2?
Obs: O form1, que abriu form2 tem estará aberto obviamente.
Socorro, não acredito que ninguém tenha passado por este problema!!!
Citação:Como executar o método [ô]PesquisarCliente[Ô] , do Form1, a partir do Form2?
Desde que o método esteja definido como Público não vejo o que estaria impossibilitando a chamada [Ô]Form1.PesquisarCliente()[Ô]
Mas como passei no modelo... Eu colocaria um parâmetro no método PesquisarCliente(ByVal TextoPesquisa As String), e chamaria o form2 como ShowDialog.
Ao fechar o Form2, caso o botão pressionado tenha sido o de efetuar a pesquisa, execute a pesquisa.
Exatamente isso mesmo, é so torna-lo Publico e poderas executar normalmente.
Pessoal,
Eu esqueci de mencionar algo importantissÃmo!!!!
Executar o método, eu consigo . ( Eu já tinha colocado como público ). Mas......
Por algum motivo estranho, depois que o método é executado e os dados retornados na função
Nenhum das caixas de texto do Form1 exibe os valores retornados do Dataset.
Obs: Eu sei que o método esta funcionando,pois não tem mensagem de erro e também, porque se eu mando um Msgbox exibir o dados retornados na
função (PesquisarCliente) ele exibe.
DETALHE:
Se eu executo o mesmo método, a partir do própio formulário (Form1) tudo funciona ! As caixas de texto são atualizadas,etc...
Mas, se executo o mesmo método a partir de Form2, ele é executado , mas as caixas de texto de Form1, não exibem o valor retornado pela função.
O que eu acho, é que deve ter o modo certo, de se mandar abrir o Form2, e provavelmente um modo certo de executar o método do Form1, que já esta
aberto.
O que peço aos colegas é simples:
1.) Preciso saber como chamar Form2 , a partir de Form1
2.) Depois, executar o um método de Form1 (PesquisarCliente), a partir de Form2
Eu esqueci de mencionar algo importantissÃmo!!!!
Executar o método, eu consigo . ( Eu já tinha colocado como público ). Mas......
Por algum motivo estranho, depois que o método é executado e os dados retornados na função
Nenhum das caixas de texto do Form1 exibe os valores retornados do Dataset.
Obs: Eu sei que o método esta funcionando,pois não tem mensagem de erro e também, porque se eu mando um Msgbox exibir o dados retornados na
função (PesquisarCliente) ele exibe.
DETALHE:
Se eu executo o mesmo método, a partir do própio formulário (Form1) tudo funciona ! As caixas de texto são atualizadas,etc...
Mas, se executo o mesmo método a partir de Form2, ele é executado , mas as caixas de texto de Form1, não exibem o valor retornado pela função.
O que eu acho, é que deve ter o modo certo, de se mandar abrir o Form2, e provavelmente um modo certo de executar o método do Form1, que já esta
aberto.
O que peço aos colegas é simples:
1.) Preciso saber como chamar Form2 , a partir de Form1
2.) Depois, executar o um método de Form1 (PesquisarCliente), a partir de Form2
ta, a questao é, porque o metodo precisa estar em um FORM, tu pode criar uma classe para isso.
passa sua função ai que eu tento montar algo aqui.
passa sua função ai que eu tento montar algo aqui.
Tópico encerrado , respostas não são mais permitidas