Visual Basic - 2 decimales en el GRID

Life is soft - evento anual de software empresarial
 
Vista:

2 decimales en el GRID

Publicado por jose (128 intervenciones) el 13/12/2002 07:38:38
If InStr(TDBGrid1.Columns(3).Value, ".") > 0 Then
KeyAscii = 0
Cancel = True
Exit Sub
End If

amigos,

Con ese codigo de arriba, limito en el evento keypress de una columna de un grid que no me
pueda digitar el usuario mas de dos puntos decimales, en esa celda.

como puedo controlar que que despues del punto decimal solo puede digitar dos digitos,
que no se pueda poner mas de eso.

o sea solo asi se deberia de poder digitar1.25 o 1.39 o 1.00
pero permite 1.2564 o 1.001 que alli me estan goliando por error.

ya le tengo puesto en el format de esa columna "###,###,##0.00" y al abandonar la columna
formatea bien o sea que si digita 1.2564 solo represente 1.25 pero internamente si
se lleva la celda el 1.2564
si o digito 1 y enter el me pone 1.00 y eso esta bueno, pero si por error a la hora de digitar
di 1.001 ese uno se va en la celda.

ese grid no es un recordset, es un arreglo que se maneja en memoria.

denme una idea si pueden gracias.

josé


Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:2 decimales en el GRID

Publicado por Antonio Medina (5 intervenciones) el 14/12/2002 21:15:37
Crea dos variables. Una que controle si estas digitando la parte entera o la decimal del número (tipo TRUE/FALSE, que se pondrá TRUE cuando digitas el punto decimal), y otra variable "NumeroDecimales" que se inicia a cero, y cuando la primera sea TRUE lleve la cuenta de los dígitos introducidos a partir de ese momento. Si exceden de dos entonces KeyAscii = 0
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:2 decimales en el GRID

Publicado por Antonio Medina (5 intervenciones) el 14/12/2002 21:18:51
Otra cosa que puedes intentar es pasar lo digitado vía KEYPRESS a una variable y analizar si el dato es válido antes de hacerlo visible en la celda del grid que se trate.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar