FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Tecla punto como coma decimal
Hola, he buscado en los diferentes hilos que hay pero no he encontrado solución a mi problema.
Mi problema es que necesito que al pulsar tanto la coma como el punto, lo coja como separador decimal. He probado varios ejemplos en el Keypress que a continuación os pongo, pero el punto me lo ignora. Imagino que tendré que modificar algo de la coma decimal o algo de eso, pero no lo domino demasiado. Estos son los casos que he probado:
Y por otro lado:
Agradezco vuestra ayuda de antemano! |
#2
|
||||
|
||||
En sistemas Windows, creo que eso se soluciona en Configuración Regional...
|
#3
|
|||
|
|||
Pero yo lo que quiero es que tanto si al pulsar la coma como al pulsar el punto me ponga la coma decimal, igual no me he explicado bien antes. Es decir, si queréis un ejemplo, que funcione igual que la calculadora de Windows, que tanto si pulsas el punto como la coma se pone la coma decimal.
Gracias de nuevo |
#4
|
|||
|
|||
Encontré la solución...
Se trata de jugar con la captura del mensaje y cambiarlo, paso el código: Declaramos la siguiente función:
Asignamos la propiedad OnMessage en el evento Create del formulario, por ejemplo:
Si queremos dejar de capturar mensajes todo lo que tenemos que hacer es establecer OnMessage en nil:
Finalmente debemos implementar el procedimiento. Por ejemplo, vamos a atrapar los mensajes de teclado WM_KEYUP y WM_KEYDOWN para convertir el punto decimal del teclado numérico en una coma.
Cabe destacar que la solución la encontré aquí: http://www.latiumsoftware.com/es/delphi/00047.php Yo me he permitido modificar la función para que cambie también el punto del teclado normal, tal que así:
Gracias por la ayuda y espero que sirva a alguien! |
#5
|
||||
|
||||
Yo más que en los eventos de teclas, lo haría en el OnChange del componente (TEdit). Si lo haces con las tecla y por ejemplo "PEGAS" un valor con el menú contextual del ratón, los eventos de teclas no saltarán.
Si lo haces con el evento OnChange o similar, lo único que debes tener en cuenta es dejar el cursor en la misma posición que estaba antes de modificar el valor (revisa para ellos las propiedades SelText, SelStart,... del TEdit).
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
|||
|
|||
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
SQL y coma decimal | mjjj | SQL | 3 | 26-12-2008 22:18:51 |
Coma presionando punto.. | Delfino | Varios | 2 | 20-10-2007 11:47:11 |
xml punto coma | carlomagno | Varios | 2 | 06-09-2004 11:49:35 |
Separador decimal como coma (,) | Investment | SQL | 2 | 26-01-2004 11:36:10 |
Como le saco la coma o el punto a un número? | DML | Varios | 4 | 23-06-2003 09:46:03 |
|