Ver Mensaje Individual
  #7
Antiguo 14 de noviembre de 2015, 17:50
Joseg
El Foro es mi casa
Activista del Foro: Activista del Foro - Issue reason: Por participación activa Innovación: Por aportar innovaciones - Issue reason: Por aportar soluciones innovadoras en varias ocasiones 
Última Actividad 21.09.2026 18:39
Posts Posts: 402
Likes enviados Enviados: 130
Likes recibidos Recibidos: 179

Citación del post de Kuk Ver Mensaje
Joseg, no entiendo nada... Preguntabas por cómo cambiar el punto decimal por coma. Pensábamos que te referías al teclado, en tu programa, que cuando introduzcas el punto decimal del teclado numérico te aparezca coma en vez de punto. Luego, según lo que has dicho, he entendido que tendías muchos CmEdit (por ejemplo) y que te suponía muchos cambios en el código. El Form también tiene "PreKeyPress" en el cual si pones el código de Josber te cambia el punto por la coma en todos los controles de ese Form.

Pero ahora dices que no quieres alterar tu programa. Entonces nos vamos a la configuración de Windows (en adjuntos). Pero cambiar esta configuración significa que todos los programas la comparten. Lo cual, no es aconsejable, si en tu país es la norma es la configuración americana (999,999,999.00) y no la europea (999.999.999,00).

Se puede cambiar por programa y por tiempo limitado dicha configuración de WIndows, pero tampoco es aconsejable si usas otros programas al mismo tiempo.

Yo tengo código para comprobar el punto decimal, si es punto o coma (yo lo hago en el evento "Opened":

Código COBOL:
  1.  ENVIRONMENT     DIVISION.
  2.  DATA            DIVISION.
  3.  WORKING-STORAGE SECTION.
  4.  01  LOCALE-USER-DEFAULT     PIC S9(9) COMP-5 VALUE h"0400".
  5.  01  LOCALE-SDECIMAL         PIC S9(9) COMP-5 VALUE h"0E".
  6.  01  RET                     PIC S9(9) COMP-5.
  7.  01  LONG                    PIC S9(9) COMP-5.
  8.  01  BUFFER                  PIC X(256).
  9.  
  10.  PROCEDURE       DIVISION.
  11.  
  12.      MOVE 256 TO LONG
  13.      
  14.      CALL "GetLocaleInfoW" WITH STDCALL USING BY VALUE LOCALE-USER-DEFAULT    
  15.                                               BY VALUE LOCALE-SDECIMAL
  16.                                               BY REFERENCE BUFFER
  17.                                               BY VALUE LONG
  18.                                               RETURNING RET.
  19.          
  20.      IF  BUFFER(1:1) = ","
  21.          DISPLAY "COMA : " BUFFER  
  22.          
  23.      ELSE
  24.          DISPLAY "PUNTO : " BUFFER  
  25.      END-IF
  26.      

OK, portugués / español problema entendimiento.
Quiero simplemente haciendo clic en el botón "." (botón DEL) keypad (teclado numerico), asumir "," (coma) (ver imagem em anexo).
Imágenes Adjuntas
 
Joseg is offline   Responder Con Cita