PASSAR FORMULARIO COMO PARAMETRO EM UM METODO

BARTNGBR 07/05/2014 16:27:00
#437976
Olá Galera,

Procurei nos tópicos de vb.net e acabei não encontrando nada a respeito, minha situação é a seguinte:

tenho dois forms : form1 e form2

no form1 e form2 tenho 1 textbox com nome txtTeste

e em um modulo tenho:

private sub main(byval opcao as int)

if opcao=1 then
dim f as new form1
abrirForm (f)
else
dim f as new form2
abrirForm (f)
end IF
end sub

private sub abrirForm (byval f as form

f.txtTeste.text = [Ô]ABCD[Ô]
f.show()

end sub

porém minha duvida é por que estes códigos não funcionam?
a linha [ô]f.txtTeste.text = [Ô]ABCD[Ô][ô]
da erro dizendo que [Ô]metodo publico [ô]txtTeste[ô] no tipo [ô]form1[ô] não encontrado
porém se eu comentar esta linha e rodar a linha
[ô]f.show[ô] funciona belezinha

alguém tem alguma ideia do que pode ser ?

Desde já muito agradecido pela ajuda que este forum em me dado
NICKOSOFT 07/05/2014 16:38:10
#437977
pq vc deve jogar o valor em uma variavel publica dentro do variavel, e no load do form atribuir o valor da variavel ao text

ou ainda passe no tag do form antes do show
f.tag=[Ô]ABCD[Ô]
ai de o f.show()

no load do form recupere o valor da tag pro text
txt.text=f.tag
BARTNGBR 07/05/2014 16:49:12
#437978
Entendi sua lógica, o problema é que posteriormente vou ter três painel de dados 1 para cada cliente e a partir destes dados vou preencher documentos word.
dai para não fazer 3 metodos de preenchimento um para cada cliente isso para cada documento, minha intenção era simplesmente mudar o formulário no metodo.
alguma idéia ?
eu fazia isso no VB6 livremente ,porém fui migrar para o VB.net e agora estou tendo
NICKOSOFT 07/05/2014 19:47:43
#437982
mas se cada documento for diferente precisara de métodos diferentes, se o documento for o mesmo, ai vc chama um método passando parâmetros
ai eu não sei se entendi perfeitamente a ideia, mas de qq forma já pensou em usar o Crystal Report no caso de saídas em documento assim? mas tranquilo, se tem mais facilidade em manipular .doc sem problemas....
BARTNGBR 08/05/2014 07:17:05
#437988
À lógica que eu uso é assim:
tenho 3 formularios que os chama de paineldados1, paineldados2, e paineldados3
além destes 3 formulários tenho também um chama f_gerar documentos
neste gerar documentos tenho um botão para cada documento q sera gerado neste botão eu tenho a invocação de um metodo passando como parametro o paineldados que sera usado para gerar o documento

dai no metodo ele preenche no word de acordo com o formulário escolhido, mas neste VB2008 ele não encontra os campos dando aquela mensagem que descrevi la em cima: [ô][Ô]metodo publico [ô]txtTeste[ô] no tipo [ô]form1[ô]

Tem alguma idéia de como fazer ele reconhecer os campos a partir do parametro passado ?

Agradeço a ajuda
NICKOSOFT 08/05/2014 16:51:47
#438015
passe um array com os valores como parametro...
nao sei se deu pra entender, mas armazene os campos do formulario em um array, e o envio como parametro pro metodo
ou se nao quiser enviar dessa forma, algo simples pode ser usado um modulo pra armazenar essas informacoes, e recuperadas qnd necessario, tem varias formas de se fazer, até como uma classe seguindo orientacao a objeto
Faça seu login para responder