Clique abaixo para nos ajudar
Login

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
19 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 19 Visitantes :: 2 Motores de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
Últimos assuntos
» Buscar endereço por CEP
3/12/2016, 19:59 por pedrossian

» USAR WEBSERVICE NO VFP9
2/12/2016, 09:50 por AJC

» BANIMENTO DE USUARIO
17/11/2016, 08:31 por FAF

» Impressora Ticket
15/11/2016, 09:20 por clima238

» Gráfico
9/11/2016, 10:43 por hidroluz

» TRANSPOR TABELA
9/11/2016, 10:34 por hidroluz

» MUDANÇA DO .DBF PARA POTSGREE
9/11/2016, 09:12 por AJC

» Website com videoaulas sobre linguagens de programação
8/11/2016, 09:56 por JLDR

» Parceria para desenvolvimento de template em Wordpress
7/11/2016, 19:15 por mindix

» Data fica invertida na planilha que é gerada via programa.
27/10/2016, 11:00 por Linghston

» Maximizar report direto do menu
21/10/2016, 20:48 por Rosangela Pires

» Fechar form com tempo
21/10/2016, 10:15 por Rosangela Pires

» URGENTE: Ajuda com impressora ELGIN-L42
14/10/2016, 09:53 por megasoft

» Opções para gerar NF-e
10/10/2016, 09:07 por mavsinfo

» Google Maps
8/10/2016, 15:08 por Rosangela Pires

» Mysql
5/10/2016, 11:22 por Marcos Guedes

» Acessando Banco em MYSQL de um projeto WORDPRESS
3/10/2016, 10:58 por Marcos Guedes

» OPTION SELECT MOSTRAR CAMPOS QUASE PRONTO
26/9/2016, 21:09 por BobKuspe

» Pesquisa em grid
14/9/2016, 09:24 por AJC

» Total Code Generator
9/9/2016, 17:43 por robsonpassos

Buscar endereço por CEP

3/12/2016, 19:59 por pedrossian

Caros amigos, meu código para buscar endereço pelo CEP não funciona mais.
Alguém pode me …

Comentários: 0

USAR WEBSERVICE NO VFP9

2/12/2016, 09:50 por AJC

Pessoal, preciso de um material ou livro que me traga instruções como
usar a consumação de …

Comentários: 0

BANIMENTO DE USUARIO

13/11/2016, 16:21 por FAF

A usuária ROSANGELA PIRES ao tentar acessar o Forum obtem sempre a mensagem de BANIMENTO.
A mesma …

Comentários: 3

Impressora Ticket

15/11/2016, 09:20 por clima238

Bom dia,
Por favor alguém me explique porque o código abaixo imprime no ecrã em vez do printer: …

Comentários: 0

TRANSPOR TABELA

9/11/2016, 10:34 por hidroluz

Bom dia a todos, gostaria de saber como consigo fazer a transposição de uma tabela no VFP.



Comentários: 0

Estatísticas
Temos 6959 usuários registrados
O último usuário registrado atende pelo nome de EDBERTO

Os nossos membros postaram um total de 17117 mensagens em 2575 assuntos

VFP Translator

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Astúcia VFP Translator

Mensagem por Marcos Guedes em 26/10/2009, 13:35

Não sei se já existe algo do tipo, mas segue uma rotina que fiz para traduzir textos utilizando o Google Translate.

Espero que seja útil aos colegas!
Very Happy

Segue exemplos de como utilizar a rotina:
Código:
CLEAR

LOCAL objtraduzir AS OBJECT
LOCAL resultados AS COLLECTION
*!*
m.objtraduzir = NEWOBJECT("vfptranslator")

*!* Exemplo1 (Inglês para Português)
m.resultados = m.objtraduzir.ingles_portugues("Programming Brazil"+CHR(13)+CHR(10)+"this example was created by Marcos Guedes")
FOR i=1 TO m.resultados.COUNT
   ?m.resultados.ITEM(i)
ENDFOR
*!* Fim - Exemplo1
?
*!* Exemplo2 (Inglês para Português)
m.resultados = m.objtraduzir.ingles_portugues("life")
FOR i=1 TO m.resultados.COUNT
   ?m.resultados.ITEM(i)
ENDFOR
*!* Fim - Exemplo2
?
*!* Exemplo3 (Português para Inglês)
m.resultados = m.objtraduzir.portugues_ingles("Programação Brasil"+CHR(13)+CHR(10)+"Este exemplo foi criado por Marcos Guedes")
FOR i=1 TO m.resultados.COUNT
   ?m.resultados.ITEM(i)
ENDFOR
*!* Fim - Exemplo3
?
*!* Exemplo4 (Português para Inglês)
m.resultados = m.objtraduzir.portugues_ingles("vida")
FOR i=1 TO m.resultados.COUNT
   ?m.resultados.ITEM(i)
ENDFOR
*!* Fim - Exemplo4

m.objtraduzir = NULL

A rotina:
Código:
DEFINE CLASS vfptranslator AS CUSTOM

   *!* Autor: Marcos Guedes
   *!* Fonte: http://forum.programacaobrasil.com/visual-foxpro-f4/vfp-translator-t382.htm

   FUNCTION ingles_portugues AS COLLECTION
      LPARAMETERS conteudo AS STRING
      *!* Inglês para Português
      LOCAL conteudo AS STRING
      m.conteudo = IIF((VARTYPE(m.conteudo)!="C"),"",m.conteudo)


      RETURN THIS.traduzir("http://translate.google.com/translate_a/t?client=t&text=" + ;
         THIS.chr13_barra_n(m.conteudo) + ;
         "%0A&sl=en&tl=pt&pc=0&oc=0")
   ENDFUNC

   FUNCTION portugues_ingles AS COLLECTION
      LPARAMETERS conteudo AS STRING
      *!*  Português para Inglês
      LOCAL conteudo AS STRING
      m.conteudo = IIF((VARTYPE(m.conteudo)!="C"),"",m.conteudo)

      RETURN ;
         THIS.traduzir("http://translate.google.com/translate_a/t?client=t&text=" + ;
         THIS.chr13_barra_n(m.conteudo) + ;
         "%0A&sl=pt&tl=en&pc=0&oc=0")
   ENDFUNC

   HIDDEN FUNCTION chr13_barra_n AS STRING
      LPARAMETERS conteudo AS STRING
      *!* Controla as quebra de linhas no conteúdo
      RETURN STRTRAN(m.conteudo, CHR(13),"\n")
   ENDFUNC

   HIDDEN FUNCTION traduzir AS COLLECTION
      LPARAMETERS url AS STRING
      *!* Retorna uma Collection com os significados obtidos
      *!*
      LOCAL loxmlhttp AS OBJECT
      LOCAL lcresponse AS STRING
      LOCAL url AS STRING
      LOCAL parametros AS STRING
      LOCAL resultado AS COLLECTION
      LOCAL resulttemp AS STRING
      LOCAL contaux AS INTEGER
      *!*
      m.resultado = NEWOBJECT("Collection")
      m.parametros = ""
      *!*
      m.loxmlhttp = CREATEOBJECT("MSXML2.XMLHTTP")
      *!* Consulta o significado a partir do site do Google Translator
      m.loxmlhttp.OPEN("POST",m.url,.F.)
      *!*
      m.loxmlhttp.setrequestheader("content-type", "application/x-www-form-urlencoded")
      *!*
      m.loxmlhttp.SEND(m.parametros)
      m.lcresponse = loxmlhttp.responsetext
      *!*
      m.loxmlhttp = .NULL.

      *!* Adiciona à coleção, a primeira tradução do conteúdo
      m.resultado.ADD( STRTRAN( ALLTRIM(STREXTRACT(m.lcresponse, '"', "\n")) ,"\\ n", CHR(13)+CHR(10)) )
      *!*
      m.contaux = 3
      m.resulttemp = STREXTRACT(STRTRAN(STREXTRACT(m.lcresponse, "[", "]", m.contaux),'"',""),",")
      DO WHILE !EMPTY(m.resulttemp)

         FOR m.contador=1 TO GETWORDCOUNT(m.resulttemp,",")
            *!* Adiciona as traduções à coleção
            m.resultado.ADD( STRTRAN( ALLTRIM(GETWORDNUM(m.resulttemp,m.contador,",")), CHR(13)+CHR(10)) )
         ENDFOR

         m.contaux = m.contaux + 1
         m.resulttemp = STREXTRACT(STRTRAN(STREXTRACT(m.lcresponse, "[", "]", m.contaux),'"',""),",")
      ENDDO

      RETURN m.resultado

   ENDFUNC

ENDDEFINE


Obs:

No momento incluir apenas a tradução de inglês para português e vice-versa, mas sintam-se a vontade em fazer suas solicitações para outras traduções.

A rotina ainda está sendo testada, portanto, havendo alguma falha, favor comunicar.
Smile


Última edição por Marcos Guedes em 10/11/2009, 08:41, editado 2 vez(es)

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por marcio em 26/10/2009, 13:58

Boa Marcos,

Fiz um teste e funcionou bem. Agora é trabalhar em cima disso aí para criarmos nosso próprio tradutor...rs.

Parabéns!

[]s

marcio
Participa Bastante
Participa Bastante


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Marcos Guedes em 27/10/2009, 12:32

Foi uma nova atualização para atender a textos com tamanho maior.
A maneira de utilizá-la é mesma!
Código:
DEFINE CLASS vfptranslator AS CUSTOM

   *!* Autor: Marcos Guedes
    *!* Fonte: http://forum.programacaobrasil.com/visual-foxpro-f4/vfp-translator-t382.htm
    *!* Última modificação: 27/10/2009

   FUNCTION ingles_portugues AS COLLECTION
      *!* Inglês para Português
      LPARAMETERS conteudo AS STRING
      LOCAL parametros AS STRING
      *!*
      IF (VARTYPE(m.conteudo)!="C") THEN
         m.conteudo = ""
      ENDIF
      m.conteudo = THIS.chr13_barra_n(m.conteudo)
      *!*
      m.parametros = "file&history_state0&hl=pt-BR&ie=UTF-8&js=y&prev=_t&sl=en&swap=1&"
      m.parametros = m.parametros + "" + "text=" + m.conteudo + "&tl=pt"
      *!*
      RETURN THIS.traduzir(m.parametros)
   ENDFUNC
   
   FUNCTION portugues_ingles AS COLLECTION
      *!*  Português para Inglês
      LPARAMETERS conteudo AS STRING
      LOCAL parametros AS STRING
      *!*
      IF (VARTYPE(m.conteudo)!="C") THEN
         m.conteudo = ""
      ENDIF
      m.conteudo = THIS.chr13_barra_n(m.conteudo)
      *!*
      m.parametros = "file&history_state0&hl=pt-BR&ie=UTF-8&js=y&prev=_t&sl=pt&swap=1&"
      m.parametros = m.parametros + "" + "text=" + m.conteudo + "&tl=en"
      *!*
      RETURN THIS.traduzir(m.parametros)
   ENDFUNC

   HIDDEN FUNCTION chr13_barra_n AS STRING
      LPARAMETERS conteudo AS STRING
      *!* Controla as quebra de linhas no conteúdo
      RETURN STRTRAN(m.conteudo, CHR(13),"\\n")
   ENDFUNC

   HIDDEN FUNCTION traduzir AS STRING
      *!* Retorna uma coleção de significados obtidos
      LPARAMETERS parametros AS STRING
      *!*
      LOCAL url AS STRING
      LOCAL loxmlhttp AS OBJECT
      LOCAL resultado AS COLLECTION
      LOCAL strtemp1 AS STRING
      LOCAL strtemp2 AS STRING
      LOCAL cttemp AS INTEGER
      *!*
      m.url = "http://translate.google.com/translate_t"
      m.resultado = NEWOBJECT("Collection")
      *!*
      IF (VARTYPE(m.parametros)!="C") THEN
         m.parametros = ""
      ENDIF
      *!*
      m.loxmlhttp = CREATEOBJECT("MSXML2.XMLHTTP")
      *!* Consulta o significado a partir do site do Google Translator      
      m.loxmlhttp.OPEN("POST",m.url,.F.)
      m.loxmlhttp.setrequestheader("content-type", "application/x-www-form-urlencoded")
      m.loxmlhttp.SEND(m.parametros)
      m.lcresponse = loxmlhttp.responsetext
      m.loxmlhttp = .NULL.

      m.strtemp1 = STRTRAN( STREXTRACT(m.lcresponse,[<div id=result_box dir="ltr">],[</div>]) ,"<br> ", CHR(13)+CHR(10) )

      *!* Substitui alguns caracteres do formato web para desktop
      m.strtemp1 = STRTRAN(m.strtemp1, "<br>", CHR(13)+CHR(10))      
      m.strtemp1 = STRTRAN(m.strtemp1, "\ n \", "")
      m.strtemp1 = STRTRAN(m.strtemp1, "\ N \", "")
      m.strtemp1 = STRTRAN(m.strtemp1, "\ \ n", "")
      m.strtemp1 = STRTRAN(m.strtemp1, "\ \ N", "")
      m.strtemp1 = STRTRAN(m.strtemp1, "\ n", "")
      m.strtemp1 = STRTRAN(m.strtemp1, "\ N", "")
      m.strtemp1 = STRTRAN(m.strtemp1, """, ["])
      m.strtemp1 = STRTRAN(m.strtemp1, "'", ['])

      *!* Texto principal
      m.resultado.ADD( ALLTRIM( m.strtemp1 ) )
      *!* Mais traduções
      m.strtemp1 = STREXTRACT(m.lcresponse,"<td><ol>","</ol></td></tr><tr><td>")
      m.cttemp = 2
      m.strtemp2 = STREXTRACT(m.lcresponse,"<li>","</li>",m.cttemp)

      DO WHILE !EMPTY(m.strtemp2)
         m.resultado.ADD( ALLTRIM(m.strtemp2) )
         m.cttemp = m.cttemp + 1
         m.strtemp2 = STREXTRACT(m.lcresponse,"<li>","</li>",m.cttemp)
      ENDDO

      RETURN m.resultado
   ENDPROC

ENDDEFINE

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Marcos Guedes em 28/10/2009, 11:17

Um simples exemplo utilizando a rotina de tradução (No arquivo contém o projeto e executável!):

Clique aqui para realizar o download!

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Marcos Guedes em 2/3/2010, 11:49

Atualização 02/03/2010:
Código:
CLEAR

LOCAL objtraduzir AS OBJECT
LOCAL resultados AS COLLECTION
*!*
m.objtraduzir = NEWOBJECT("vfptranslator")

*!* Exemplo1 (Inglês para Português)
m.resultado = m.objtraduzir.ingles_portugues("Programming Brazil"+CHR(13)+CHR(10)+"this example was created by Marcos Guedes")
?m.resultado
*!* Fim - Exemplo1
?
*!* Exemplo2 (Português para Inglês)
m.resultado = m.objtraduzir.portugues_ingles("Programação Brasil"+CHR(13)+CHR(10)+"Este exemplo foi criado por Marcos Guedes")
?m.resultado
*!* Fim - Exemplo2

m.objtraduzir = NULL

DEFINE CLASS vfptranslator AS CUSTOM

   *!* Autor: Marcos Guedes
   *!* Fonte: http://forum.programacaobrasil.com/visual-foxpro-f4/vfp-translator-t382.htm

   FUNCTION ingles_portugues AS COLLECTION
      LPARAMETERS conteudo AS STRING
      *!* Inglês para Português
      LOCAL conteudo AS STRING
      m.conteudo = IIF((VARTYPE(m.conteudo)!="C"),"",m.conteudo)

      RETURN THIS.traduzir(m.conteudo, "en", "pt")
   ENDFUNC

   FUNCTION portugues_ingles AS COLLECTION
      LPARAMETERS conteudo AS STRING
      *!*  Português para Inglês
      LOCAL conteudo AS STRING
      m.conteudo = IIF((VARTYPE(m.conteudo)!="C"),"",m.conteudo)

      RETURN THIS.traduzir(m.conteudo, "pt", "en")
   ENDFUNC

   HIDDEN FUNCTION chr13_barra_n AS STRING
      LPARAMETERS conteudo AS STRING
      *!* Controla as quebra de linhas no conteúdo
      RETURN STRTRAN(m.conteudo, CHR(13)+CHR(10),"\n")
   ENDFUNC

   HIDDEN FUNCTION traduzir AS COLLECTION
      LPARAMETERS texto AS STRING, lnin AS STRING, lnout AS STRING
      *!*
      
      
      m.url = [http://translate.google.com.br/]
      m.lnin = IIF((VARTYPE(m.lnin)!="C"),"en",m.lnin)
      m.lnout = IIF((VARTYPE(m.lnout)!="C"),"pt",m.lnout)

      m.parametros = ;
         "eotf=1&file=&hl=pt-BR&ie=UTF-8&js=y&layout=1&prev=_t&sl=" + ;
         m.lnin + "&text=" + THIS.chr13_barra_n(m.texto) + "&tl=" + m.lnout

      m.loxmlhttp = CREATEOBJECT("MSXML2.XMLHTTP")
      m.loxmlhttp.OPEN("POST",m.url,.F.)
      m.loxmlhttp.setrequestheader("content-type", "application/x-www-form-urlencoded")
      m.loxmlhttp.SEND(m.parametros)
      m.lcresponse = loxmlhttp.responsetext
      m.loxmlhttp = NULL

      RETURN STRTRAN(STREXTRACT(m.lcresponse,[onmouseout="this.style.backgroundColor='#fff'">],[</span>]),"\ n",CHR(13)+CHR(10))

   ENDFUNC

ENDDEFINE

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por hugo em 2/3/2010, 13:12

legal cara

heheheheh

_________________
"A tristeza é a falta de alegria, mais sem ela eu não poderia entender a alegria do fato de que a felicidade existe!"
Helio Leites - [Você precisa estar registrado e conectado para ver este link.]

hugo
Usuário 5 Estrelas
Usuário 5 Estrelas


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Marcos Guedes em 4/3/2010, 16:55

Segunda versão do exemplo, para download:
- Clique aqui para baixar o arquivo!

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por AMELIO em 2/6/2015, 23:14

OLE IDispath exception code 0 from  msxml3.dll :
acesso negado

     m.loxmlhttp.SEND(m.parametros)

não qual é o erro poderia me ajudar a resolver

AMELIO - obrigado

AMELIO
Participa Pouco
Participa Pouco


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Marcos Guedes em 22/9/2015, 15:54

Boa taede, Amelio.

Você está executando o aplicativo de que forma?
Pelo VFP? Instalado em alguma máquina?

_________________
Marcos Guedes - Programador e desenvolvedor Web.


Visite o nosso portal:
[Você precisa estar registrado e conectado para ver este link.]

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Astúcia Re: VFP Translator

Mensagem por Conteúdo patrocinado Hoje à(s) 09:29


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum