Página 1 de 1
Copiar Colar
Enviado: 06 Dez 2012 10:31
por Paulo Pereira
Meu cliente, estava acostumado com o TameDos, tela cheia, opcao de copia colar...
com versao em Harbour o TameDos nao faz efeito..
Uso o modo console, como posso fazer para ter a opcao copiar colar ??
Interessante que estando em janela, se pode colar uma informacao, mas nao copiar...
Obrigado
Copiar Colar
Enviado: 06 Dez 2012 13:39
por Pablo César
Olá Paulo. Você poderia definir uma tecla para copiar, outra para colar. Tudo depende em quê situação você se encontra. Se for para obter uma determinada string e na posição fixa da tela. Você poderia utilizar esta função:
https://pctoledo.org/forum/viewto ... ela#p75728
Copiar Colar
Enviado: 06 Dez 2012 20:26
por Paulo Pereira
Desculpe, acho que nao entedi muito bem..mas nao é janela, sao dados que quero copiar...
O que preciso é que numa tela de consulta ou get de cliente por exemplo...
Se marcar o CNPJ com o mouse, e copiar, depois colar, para outro lugar...dentro do sistema ou para um aplicativo do windows ( tinha essa opcao pelo Tamedos, quando nao era o harbour)
Copiar de fora para dentro funciona. Copiar de um texto do NotePad, por exemplo e colar num campo de get, o windows aceita, preciso do contrario, copiar de dentro do sistema pra outro lugar..
Obrigado
Copiar Colar
Enviado: 06 Dez 2012 21:21
por Pablo César
Paulo Pereira escreveu:Desculpe, acho que nao entedi muito bem..mas nao é janela
Sim, isso entendi. Não está em modo janelado (você já disse isso). Porque se tivesse também iria facilitar, pois você faria toda essa questão de copiar e colar através do sistema operacional. Mas como disse tem que estar em modo janelado.
sao dados que quero copiar...
O que preciso é que numa tela de consulta ou get de cliente por exemplo...
Se marcar o CNPJ com o mouse, e copiar, depois colar, para outro lugar...dentro do sistema ou para um aplicativo do windows ( tinha essa opcao pelo Tamedos, quando nao era o harbour)
Seria copiar do seu get (aplicação em Clipper) e colar em outro programa em Windows. Então você pode definir (por exemplo) a tecla F10 para que o conteúdo daquele GET que contém o CNPJ possa acionar a função que copia para a área de transferência. Ou pode também fazer que após confirmar o CNPJ coloque automaticamente o CNPJ na área de transferência. Mas marcar bloco e utilizar as tecla Ctrl-C de dentro do Clipper... não tem como. Pois justamente as teclas Ctrl-C já são ocupada internamente pelo Clipper e fazer uma alteração dessas não sei se é possível (ao menos em Clipper).
Coloquei um exemplo no arquivo anexo, onde o GetSys.prg foi alterado. Perceba que tem o nome da variavel. Mude para o nome correto da sua variável. Nesse exemplo estou utilizando a WAPI.LIB do Maligno, mas tem outras bibliotecas que poderá utilizar em Clipper. Quando compilar com RTLINK vai dar erro de falta do SWPRUNCMD, mas pode ignorar. Mas se usar BLINKER, não vai dar erro. No exemplo tem para oc aso do Enter colocar automaticamente na memória, no caso do F9 copia manualmente para a memoria e F10 que cola do clipboard.
Copiar Colar
Enviado: 07 Dez 2012 11:36
por Paulo Pereira
Oi...
esta em modo janelado...mas o mouse nao apresenta opcao de COPIA, só colar..
Sim, isso entendi. Não está em modo janelado (você já disse isso). Porque se tivesse também iria facilitar, pois você faria toda essa questão de copiar e colar através do sistema operacional. Mas como disse tem que estar em modo janelado.
Copiar Colar
Enviado: 07 Dez 2012 12:34
por Pablo César
Paulo não sei se você sabia sobre esta informação:
Com o modo de edição rápida, você pode copiar texto entre uma janela de comando e programas baseados no Windows e você também pode colar texto em uma janela de comando usando uma operação com o botão direito. No Microsoft Windows 2000, edição rápida e inserir modo serão ativados por padrão. No Windows XP, porque esses recursos são desabilitados por padrão, há compatibilidade de programas aprimorada com programas mais antigos baseados em MS-DOS que tenha incluído o suporte de mouse.
Para ativar o modo de edição rápida no Windows XP:
Clique em Iniciar, clique em Executar, digite cmd, em seguida, clique em OK.
Clique no ícone no canto superior esquerdo da janela do Prompt de comando e, em seguida, clique em Propriedades.
Na guia Opções, clique para selecionar as caixas de seleção Modo de edição rápida e Modo de inserção.
Clique em OK.
Clique em Salvar as propriedades para janelas futuras com o mesmo título, em seguida, clique em OK.
Faça também:
Clique no ícone no canto superior esquerdo da janela do Prompt de comando e, em seguida, clique em Padrões.
Na guia Opções, clique para selecionar as caixas de seleção Modo de edição rápida e Modo de inserção.
Clique em OK.
Clique em Salvar as propriedades para janelas futuras com o mesmo título, em seguida, clique em OK.
Obs.: Quando você seleciona, bastaria você dar um <Enter> para que o texto selecionado seja colocado na memória.
Copiar Colar
Enviado: 07 Dez 2012 13:32
por Paulo Pereira
Obrigado
No meu XP, ate funciona,
mas nao aparece o menu copiar/colar... tem que usar CTRC-C, depois se clicar no botao direito ja cola, nao ficou tao pratico..porque o usuario pode estar querendo marcar outro lugar e nao copiar para aquele lugar...
vou ver no cliente que tem o Seven 64 bits,
Copiar Colar
Enviado: 10 Dez 2012 20:49
por andersoncamilo
Boa noite
Eu utilizo o Xharbour 1.21 modo console, e consigo copiar da seguinte forma
1 - Clica com o botão direito do mouse, clica em "Marcar"
2 - Seleciona o que você quer copiar, pode ser qualquer parte da tela
3 - Clica novamente com o botão direito do mouse, pronto ja copiou, ai é so colar onde você quiser.
Se for copiar para algum campo do programa, este campo tem que esta sendo editado no momento do colar.
Ps. Para isto funcionar eu coloco no inicio do programa principal a seguinte instrução: REQUEST HB_NOMOUSE
Bom trabalho
Anderson Camilo
Copiar Colar
Enviado: 18 Dez 2012 22:04
por Paulo Pereira
OPa.. esse REQUEST HB_NOMOUSE é de qual lib ou Include. .??
com esse meu HBP, a funcao é indefinida..
# para exec final
-otransp.exe
-inc
-prgflag=/l
-L\clipper5\lib
-lmylib
-lxhb
-lhbct
-lhbwin
-compr=def
-rebuild
transp.prg
Copiar Colar
Enviado: 18 Dez 2012 23:46
por lucimauro
Em Harbour 3.00 eu fiz COPIAR e COLAR dentro do sistema.
Quero dizer voce pode copiar no windows e colocar na get do sistema e virce verça.
Copiar Colar
Enviado: 20 Dez 2012 15:22
por JoséQuintas
O detalhe é não esperar igual o Windows...
Se está usando console deveria aparecer igual.
Se está usando GTWVT que transforma em tela gráfica, apesar de igual console, vai ter que mexer os fontes.
Se fizer uma Inkey() própria é interessante, pra acrescentar recursos.
Aqui fiz assim:
Código: Selecionar todos
Alteração 1:
hb_gtInfo( HB_GTI_CLIPBOARDDATA )
hb_gtInfo( HB_GTI_SELECTCOPY, .T. )
Alteração 2:
FUNCTION MyInkey( nTempo)
LOCAL nKey, nBits, lIsKeyCtrl
nKey := Inkey( nTempo, INKEY_ALL - INKEY_MOVE ) // Teclado+clicks do mouse
nBits := HB_GTINFO( HB_GTI_KBDSHIFTS )
lIsKeyCtrl := nBits == HB_BITOR( nBits, HB_GTI_KBD_CTRL )
DO CASE
CASE nKey == K_INS .AND. lIsKeyCtrl
KEYBOARD hb_gtInfo( HB_GTI_CLIPBOARDDATA )