Tecla DEL não funciona no harbour
Moderador: Moderadores
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Tecla DEL não funciona no harbour
Ola!
Provado por a + b que esse povo ".com" que vendem serviços do [x]Harbour, são todos sangue sugas do ".org"
Nenhum deles fazem nada, só ficam copiando, usando e vendendo trabalhos de duas ou três pessoas... Przmek, Viktor...
Saudações,
Itamar M. Lins Jr.
Provado por a + b que esse povo ".com" que vendem serviços do [x]Harbour, são todos sangue sugas do ".org"
Nenhum deles fazem nada, só ficam copiando, usando e vendendo trabalhos de duas ou três pessoas... Przmek, Viktor...
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Tecla DEL não funciona no harbour
Amiguinhos,
Nem li as outras respostas, mas pude notar que o código não estava testando o DEL:
otherwise=em outro caso, por outro lado...
Você não está especificando o DEL, simplesmente está, ahhhhhh, qualquer tecla faz um DEL.
Já encontrei vários arquivos .CH com código de teclas que tem definições diferentes de código. Pra mim o DEL se resolve com o código 46.
Sempre que necessário ao estipular uma tecla para uma função, devemos usar o LastKey() para devolver o código associado, que pode ser levemente diferente do Clipper ao Harbour.
Nem li as outras respostas, mas pude notar que o código não estava testando o DEL:
Código: Selecionar todos
Case nOpcao = 0
...
Case !LastKey() = 7
...
otherwise
[b]@ 24,00 say "Pressionou tecla DEL"[/b]
aFiles[nOpcao] = StrTran(aFiles[nOpcao],'','ú')
Alert(aFiles[nOpcao]+" - "+"Tecla Del")
EndCase
Você não está especificando o DEL, simplesmente está, ahhhhhh, qualquer tecla faz um DEL.
Já encontrei vários arquivos .CH com código de teclas que tem definições diferentes de código. Pra mim o DEL se resolve com o código 46.
Sempre que necessário ao estipular uma tecla para uma função, devemos usar o LastKey() para devolver o código associado, que pode ser levemente diferente do Clipper ao Harbour.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Tecla DEL não funciona no harbour
Sinto muito mas viajou.... rsrochinha escreveu:Pra mim o DEL se resolve com o código 46.
O teclado numérico pode ser DEL mas também pode ser ponto (.) se o numérico estiver ligado.
Faço isso no meu aplicativo, pra funcionar com teclado ligado ou desligado.
E o código Ascii do ponto é..... 46, seria a tecla DEL com o numérico ligado, mas desde que seja a DEL do teclado numérico.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Tecla DEL não funciona no harbour
Mas aproveitando....
Melhor esquecer tanto o prompt quanto a tecla DEL.
Se vai marcar registros.... porque DEL?
Melhor usar espaço, por exemplo, e já aproveita a rotina pra muitas outras coisas.
Até porque, só vai confirmar se é pra excluir mesmo depois, então estaria só marcando mesmo, e o DEL fica esquisito, e até perigoso, porque o usuário pode se acostumar a teclar DEL e sair apagando tudo..... rs
Melhor esquecer tanto o prompt quanto a tecla DEL.
Se vai marcar registros.... porque DEL?
Melhor usar espaço, por exemplo, e já aproveita a rotina pra muitas outras coisas.
Até porque, só vai confirmar se é pra excluir mesmo depois, então estaria só marcando mesmo, e o DEL fica esquisito, e até perigoso, porque o usuário pode se acostumar a teclar DEL e sair apagando tudo..... rs
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Tecla DEL não funciona no harbour
Amiguinhos,
ponto devolve - 194
virgula devolve - 46(meu DEL)
delete devolve - 46
Numérico desligado:
ponto devolve - 194
virgula devolve - 110(meu DEL)
delete devolve - 46
Teclado Bright 106 teclas. Tenho a tecla DEL no teclado numérico e DELETE no extras.
Numérico ligado:E o código Ascii do ponto é..... 46, seria a tecla DEL com o numérico ligado, mas desde que seja a DEL do teclado numérico.
ponto devolve - 194
virgula devolve - 46(meu DEL)
delete devolve - 46
Numérico desligado:
ponto devolve - 194
virgula devolve - 110(meu DEL)
delete devolve - 46
Teclado Bright 106 teclas. Tenho a tecla DEL no teclado numérico e DELETE no extras.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Tecla DEL não funciona no harbour
Ok corrigindo:
Isso que está junto com a tecla DEL é uma vírgula.
Mas.... uso configurado como Estados Unidos Internacional, e nele é ponto.
O resultado é....
Numérico desligado... DEL retorna 7, código do DEL
Numérico ligado em teclado EUA... DEL retorna 46, código do "."
Numérico ligado em teclado PTBR... DEL retorna 44, código da ","
O PROMPT:
- Ou movimenta com setas
- Ou digita a inicial das palavras
DEL, ponto, vírgula, talvez só se encaixem se forem inicial de alguma das palavras do PROMPT.
Se o XHarbour faz diferente... é porque o PROMPT dele não está no padrão.
"Talvez".... usando um SET KEY 7 TO Rotina, e modificar nessa rotina, mas só vai complicar, porque dependeria de uma varíavel PRIVATE pra ficar visível. nessa rotina, o que vai tornar tudo perigoso.
"Talvez".... SET KEY 7 TO __KeyBoard( Chr(13) )... mas também só vai complicar a rotina.
E como eu disse, acostumar o usuário a marcar usando DEL, é ele achar que pode digitar DEL no aplicativo inteiro quando quiser marcar alguma coisa.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Tecla DEL não funciona no harbour
Amigos, no link abaixo tem como testar cada tecla pressionada:
https://www.w3.org/2002/09/tests/keys-cancel2.html
Abraços,
https://www.w3.org/2002/09/tests/keys-cancel2.html
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Tecla DEL não funciona no harbour
Texto completo no Harbour, agradecimentos ao Viktor:
https://harbour.github.io/doc/clc53.html#menu-to-cmd
Como dá pra ver, só iniciais mesmo.
https://harbour.github.io/doc/clc53.html#menu-to-cmd
Como dá pra ver, só iniciais mesmo.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Tecla DEL não funciona no harbour
Amiguinhos,
JoséQuintas
Ai complica, se o teclado estiver para EUA ou PTBR modifica o resultado, como saber o que o teclado está obdecendo?
O Set Language do Harbour poderia interferir ou fixar nestes resultados?
Toledo
Show-de-bola o site. :)Pos
JoséQuintas
Ai complica, se o teclado estiver para EUA ou PTBR modifica o resultado, como saber o que o teclado está obdecendo?
O Set Language do Harbour poderia interferir ou fixar nestes resultados?
Toledo
Show-de-bola o site. :)Pos
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Tecla DEL não funciona no harbour
Quer mesmo saber?rochinha escreveu:Ai complica, se o teclado estiver para EUA ou PTBR modifica o resultado, como saber o que o teclado está obdecendo?O Set Language do Harbour poderia interferir ou fixar nestes resultados?
Nem a bost. do Windows 10 gosta disso.
Tenho que trocar pra EUA Internacional várias vezes por dia.
Vou acabar tendo que importar um teclado dos EUA só pro Windows 10 parar de ficar atrapalhando.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Tecla DEL não funciona no harbour
Amiguinhos,
Alguns clientes meus me reclamavam que as vezes algumas teclas do meu PDV paravam de funcionar e eu ficava perdendo os cabelos pra saber o porque.
Neste t[opico muito se falou sobre idioma de teclado e diferen;as nos retornos de teclas o que fez com que a pulga atras da orelha me pentelhasse.
Fui atras de um meio de contornar isto e cheguei at[e aqui?
O interessante é que notei que o teclado pode se comportar com diferentes layouts ao mesmo tempo em diferentes telas abertas no momento, ou seja, um prompt do DOS pode estar em portugues mas uma aba do ChRome pode estar em inglês.
Com o teste acima, consegui mudar a quente o layout dentro do prompt.
Alguns clientes meus me reclamavam que as vezes algumas teclas do meu PDV paravam de funcionar e eu ficava perdendo os cabelos pra saber o porque.
Neste t[opico muito se falou sobre idioma de teclado e diferen;as nos retornos de teclas o que fez com que a pulga atras da orelha me pentelhasse.
Fui atras de um meio de contornar isto e cheguei at[e aqui?
Código: Selecionar todos
#define HKL_PREV 0
#define HKL_NEXT 1
#define KLF_ACTIVATE 0x00000001
#define KLF_NOTELLSHELL 0x00000080
#define KLF_REPLACELANG 0x00000010
#define KLF_SUBSTITUTE_OK 0x00000002
#define KLF_REORDER 0x00000008
#define KLF_RESET 0x40000000
#define KLF_SETFORPROCESS 0x00000100
#define KLF_SHIFTLOCK 0x00010000
Function main()
IF MY_GETKEYBOARDLAYOUT()=68551702 // Verifica se esta com layout para Portugues
// EN - Ingles (Estados Unidos)
MY_LOADKEYBOARDLAYOUT( "00000409", KLF_ACTIVATE )
// RU - Russo (Russia)
//MY_LOADKEYBOARDLAYOUT( "00000419", KLF_ACTIVATE )
// BE - Bielo-Russo (Belarus)
//MY_LOADKEYBOARDLAYOUT( "00000423", KLF_ACTIVATE )
?"Teste"
ENDIF
return
#pragma BEGINDUMP
#include <windows.h>
#include <hbapi.h>
HB_FUNC( MY_GETKEYBOARDLAYOUT )
{
hb_retnl( (LONG) GetKeyboardLayout( ( long ) hb_parc( 1 ) ) ) ;
}
HB_FUNC( MY_LOADKEYBOARDLAYOUT )
{
hb_retnl( (LONG) LoadKeyboardLayout( hb_parc(1), hb_parni(2) ) ) ;
}
#pragma ENDDUMP
Com o teste acima, consegui mudar a quente o layout dentro do prompt.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
