jaumDoDelphi Postado Julho 5, 2010 Denunciar Share Postado Julho 5, 2010 (editado) Ola galera!Estou com problemas no envento "OnKeyPress"fiz um projeto da AGENDA, mas hj eu descobri um erro grave!Estou utilizando o comando para transformar uma linha do BANCO de dadospara "CSV" que pode ser lido no MS EXCELL.Dai vem o problema- como os dados em CSV são gravados desta formaCOD;NOME;ENDER;TEL;INFOse você por o PONTO VIRGUAL ";" por engano vai danificar todo o arquivo CSV!Dai eu queria Bloquear a tecla ;, fiz o seguinte comandobegin inherited; if (key in [';',#8]) then key:=#0; end;Ate ai tudo bem funcionou mas quando eu apreto o BACKSPACE ele não funciona mais!!!o PONTO VIRGUAL não pode ser digitado mas este comando matou meu BACKSPACE!alguém tem alguma solução? Editado Julho 5, 2010 por jaumDoDelphi Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Douglas Soares Postado Julho 5, 2010 Denunciar Share Postado Julho 5, 2010 Ola galera!Estou com problemas no envento "OnKeyPress"fiz um projeto da AGENDA, mas hj eu descobri um erro grave!Estou utilizando o comando para transformar uma linha do BANCO de dadospara "CSV" que pode ser lido no MS EXCELL.Dai vem o problema- como os dados em CSV são gravados desta formaCOD;NOME;ENDER;TEL;INFOse você por o PONTO VIRGUAL ";" por engano vai danificar todo o arquivo CSV!Dai eu queria Bloquear a tecla ;, fiz o seguinte comandobegin inherited; if (key in [';',#8]) then key:=#0; end;Ate ai tudo bem funcionou mas quando eu apreto o BACKSPACE ele não funciona mais!!!o PONTO VIRGUAL não pode ser digitado mas este comando matou meu BACKSPACE!alguém tem alguma solução?Mas é claro que não vai funcionar o backspace ehuehue, você o impediu de funcionar, o código #8 é o código ascii no backspace, se você quer bloquear a virgula e o ponto e virgula o correto é fazer assim ó:... if (key in [';',',']) then ... se quiser bloquear somente o ponto e virgula daí é assim: ... if key = ';' then ...Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jaumDoDelphi Postado Julho 5, 2010 Autor Denunciar Share Postado Julho 5, 2010 hahahaha!vlw mesmo Douglas. Eu pensei q #8 era algo do proprio comando kkkkk,essa você deve ter morrido de rir não é?! :lol: Mas agora sim, esta tudo certo. N preciso mais me preocupar com o FATAL ; para o arquivo CSVEu estava ate fazendo um comando de louco para corrigir o ; da só uma olhada: inherited; if not (key in ['A'..'Z','a'..'z','0'..'9','!','@','#','$','%','^','~','&','*','(',')','_','-', '+','=,'[',]','{','}',':','ç','Ç','Ã','Õ','é','É','ã','õ','á','Á','ó','Ó','ê','Ê','ô','Ô', '"','<','>','?','.','/','\','não','não',#8]) then key:=#0; end;Que Trabalho, não?muito obrigado ;) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Douglas Soares Postado Julho 5, 2010 Denunciar Share Postado Julho 5, 2010 hueheuheue, com esse comando aí se invocava até o capeta, kkkkkkkkkkkOlha aqui a tabela asciihttp://www.tabelaascii.com/e os códigos de teclas pro delphihttp://www.arquivodecodigos.net/arquivo/re...as_virtuais.phpIsso vai te ajudar quando quiser fazer referencias à teclas!Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jaumDoDelphi Postado Julho 5, 2010 Autor Denunciar Share Postado Julho 5, 2010 Opa douglas essa lista vai me ajudar muito futuramente!muito obrigado :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
jaumDoDelphi
Ola galera!
Estou com problemas no envento "OnKeyPress"
fiz um projeto da AGENDA, mas hj eu descobri um erro grave!
Estou utilizando o comando para transformar uma linha do BANCO de dados
para "CSV" que pode ser lido no MS EXCELL.
Dai vem o problema
- como os dados em CSV são gravados desta forma
COD;NOME;ENDER;TEL;INFO
se você por o PONTO VIRGUAL ";" por engano vai danificar todo o arquivo CSV!
Dai eu queria Bloquear a tecla ;, fiz o seguinte comando
begin
inherited;
if (key in [';',#8])
then
key:=#0;
end;
Ate ai tudo bem funcionou mas quando eu apreto o BACKSPACE ele não funciona mais!!!
o PONTO VIRGUAL não pode ser digitado mas este comando matou meu BACKSPACE!
alguém tem alguma solução?
Editado por jaumDoDelphiLink para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.