Iniciar Sesión

Ver la Versión Completa : [Componente] Número de más de 4 decimales en Textbox


Fito
21 de abril de 2016, 23:16
Hola Amigos:

Necesito ingresar un número que tiene mas de 4 decimales, el textbox solamente me permite 4, qué control puedo usar.

Probé con el ctNedit de dbi-tech, pero debe haber alguna incompatibilidad porque me da un errror y se cierra el proyecto.

Saludos.

Fito...

Kuk
22 de abril de 2016, 09:21
Fito, define el "RenderText" en "Standard" y haz lo siguiente:


WORKING-STORAGE SECTION.
01 EDT-DECIMAL PIC Z(5)9,9(6).

PROCEDURE DIVISION:

MOVE 1234,456789 TO EDT-DECIMAL

MOVE EDT-DECIMAL TO POW-TEXT OF CmText1

Fito
22 de abril de 2016, 15:04
Hola KUK: Gracias por responder.

Para cuando quiero mostrar lo puedo hacer de esa manera, el tema es que quiero que el operador ingrese ese dato, y siempre me redondea en 4 decimales.

Gracias. Fito...

lfarias
22 de abril de 2016, 15:38
Hola Fito:
Net Cobol soporta hasta 4 digitos decimales.. no mas que eso.
Es increible pero es asi.
Saludos. luis

Fito
22 de abril de 2016, 17:08
Hola amigos:

Buscando en mi "baúl de descargas" (siempre descargo cosas que en algún momento te sirve) encontré una solución, siempre hay alguno que le pasó lo mismo. No sé de quien es el código para agradecerle.

En el rendertext lo puse como COBOL PICTURE, y definí el picture z.z(6), me dio el error de que no puede tener mas de 4 decimales, pero no le di importancia.

Para mover los valores creé un par de variables.


01 w-texto pic x(9).
01 w-numero redefines w-texto pic +z.z(6).


y para asignar un valor al textbox


move campo to w-numero.
move w-texto to "text" of txtTextBox.


y para tomar el valor ingresado por el operador hago al reves.

move "text" of txtTextBox to w-texto.
move w-numero to campo.


Saludos.

Fito.

Kuk
22 de abril de 2016, 17:21
Fito, quieres decir que con PIC editado aunque de error no lo modifica automáticamente a 4 decimales?

Yo lo que haría es meter 2 TextBox, evaluando cuando se haya llenado uno y enfocando el segundo.
También está el OCX MaskEdit de Microsoft.

Fito
22 de abril de 2016, 17:28
Exacto KUK.

En realidad se maneja como texto y lo convertís a número con el redefines. Pero con el picture así validás que sean números y que el punto decimal esté donde queremos.

Fijate que la variable numérica editada tiene el signo, es importante.

El tema de los dos textbox no me gusta tanto, hay que hacer varios controles.

Saludos.

Fito