COPIAR CONTEÊDO DA TEXTBOX

MARIOANDRADE 23/03/2014 12:59:20
#436420
Meu amigos estou tentando criar um código que copie um conteúdo da txtCPF.text e cole em uma página da receita federal, no campo consulta
a pagina eu consigo abrir:
WebBrowser1.Navigate [Ô]http://www.receita.fazenda.gov.br/Aplicacoes/ATCTA/cpf/ConsultaPublica.asp[Ô]


Gostaria que ao clicar num determinado botão o conteúdo da textbox fosse copiado para o campo de consulta.

Se houver uma forma de tirar os pontos e traço também seria bom exemplo:

000.000.000-00 para 00000000000

Se não tiver como transferir o conteúdo copiado também serve um comando para apenas copiar
deixando para o usuário apenas o trabalho de colar.




MARIOANDRADE 23/03/2014 15:01:55
#436422
Edson, muito obrigado, já estamos na metade do caminho, só preciso agora um código para copiar e colar na área de consulta do site.
DANILOPIMENTEL 23/03/2014 15:58:11
#436424
Resposta escolhida
Olá,

Você poderá fazer isso por meio da execução de um script Javascript após a carga do site em questão. Para fazer isso e forçar essa execução você precisará acessar os objetos diretamente na árvore do DOM da página após aberta, e isso pode ser feito facilmente utilizando o evento DocumentComplete do componente WebBrowser, para saber quando o site teve sua carga concluída, nesse evento então você poderá executar o seguinte trecho de código:

WebBrowser1.Document.parentWindow.execScript [Ô]document.getElementById([ô]id_cpf[ô]).value = [ô]vbmania[ô];[Ô], [Ô]JScript[Ô]


Espero ter ajudado.

[]s

Danilo Pimentel
MARIOANDRADE 23/03/2014 17:33:23
#436425
Agora sim posso dizer que estou a um passo do sucesso (rs)..

Daniel seu código funcionou perfeitamente, só não consegui adapta-lo pra minha necessidade, ao tentar esse código dá uma mensagem de erro:

Dim texto, texto1 As String
texto = Replace(txtBDCPF.Text, [Ô].[Ô], Empty)
txtBDCPF.Text = texto
texto1 = Replace(txtBDCPF.Text, [Ô]-[Ô], Empty)
txtBDCPF.Text = texto1
Dim cpf As String
cpf = txtBDCPF.Text

WebBrowser1.Document.parentWindow.execScript [Ô]document.getElementById([ô]id_cpf[ô]).value = cpf ;[Ô], [Ô]JScript[Ô]
DANILOPIMENTEL 24/03/2014 09:15:42
#436437
Mario,

Faça da seguinte forma:

  Dim texto, texto1 As String
texto = Replace(txtBDCPF.Text, [Ô].[Ô], Empty)
txtBDCPF.Text = texto
texto1 = Replace(txtBDCPF.Text, [Ô]-[Ô], Empty)
txtBDCPF.Text = texto1
Dim cpf As String
cpf = txtBDCPF.Text

WebBrowser1.Document.parentWindow.execScript [Ô]document.getElementById([ô]id_cpf[ô]).value = [ô][Ô] + cpf + [Ô][ô];[Ô], [Ô]JScript[Ô]


[]s

Danilo Pimentel
MARCELO.TREZE 24/03/2014 11:26:16
#436442
Só pra constar nada haver coma alteração do código mas evite isso

Dim texto, texto1 As String


Pois a variavel texto ficará declarada como variant, e não string, o correto é

Dim texto As String, texto1 As String


desculpe ai o atravesso, é mania, inclusive da pra simplificar o código assim:

Dim cpf As String
cpf = Replace(Replace(txtBDCPF.Text, [Ô]-[Ô], Empty), [Ô].[Ô], Empty)
WebBrowser1.Document.parentWindow.execScript [Ô]document.getElementById([ô]id_cpf[ô]).value = [ô][Ô] + cpf + [Ô][ô];[Ô], [Ô]JScript[Ô]


ps: resposta correta é do colega DANILO, só simplifiquei um pouquinho o codigo
MARIOANDRADE 24/03/2014 22:18:01
#436480
Desculpar o que Marcelo, valeu mesmo a dica, eu tinha tentando simplificar a parte do Replace mas sem sucesso.
MARIOANDRADE 24/03/2014 22:20:13
#436481
Citação:

:
Mario,

Faça da seguinte forma:

  Dim texto, texto1 As String
texto = Replace(txtBDCPF.Text, [Ô].[Ô], Empty)
txtBDCPF.Text = texto
texto1 = Replace(txtBDCPF.Text, [Ô]-[Ô], Empty)
txtBDCPF.Text = texto1
Dim cpf As String
cpf = txtBDCPF.Text

WebBrowser1.Document.parentWindow.execScript [Ô]document.getElementById([ô]id_cpf[ô]).value = [ô][Ô] + cpf + [Ô][ô];[Ô], [Ô]JScript[Ô]


[]s

Danilo Pimentel




Valeu Danilo,

Problema resolvido, obrigado pela grande ajuda que me destes.

Tópico encerrado , respostas não são mais permitidas