Hola:
Ante todo decir que suscribo lo que señala Luis Sanz.
Y redundando en lo ya dicho probad esto y ya direis
si se van por ahí los tiros. Qué falta o sobra...
------------------------------------------------------
Option Explicit
Dim CadenaTexto As String * 20
Dim CadenaIntro As String
Private Sub Form_Load()
Text1.Text = ""
End Sub
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
Dim nTeclaPress As KeyCodeConstants
nTeclaPress = KeyCode
If nTeclaPress = vbKeyDelete Then ' Tecla Del
If Len(CadenaIntro) > 0 Then
CadenaIntro = Mid(CadenaIntro, 1, Len(CadenaIntro) - 1) 'Elimina
ult.caracter
RSet CadenaTexto = Format(CadenaIntro, "###,###,###")
Text1.Text = CadenaTexto
End If
End If
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
Dim Caracter As String * 1
Dim cValidos As String
Dim cTeclaPress As KeyCodeConstants
cTeclaPress = KeyAscii
KeyAscii = 0
cValidos = "0123456789"
Caracter = Chr(cTeclaPress)
If InStr(1, cValidos, Caracter, vbBinaryCompare) > 0 Then
If Len(CadenaIntro) <= 12 Then
CadenaIntro = CadenaIntro + Caracter
RSet CadenaTexto = Format(CadenaIntro, "###,###,###")
Text1.Text = CadenaTexto
End If
End If
End Sub
Insertar un textbox llamado Text1.text en un form y listo.
--
Saludos.
Héctor.
"Como invento, el teléfono es extraordinario, pero ¿ para qué podría servir
?..."
Ruthford B. Hayes, presidente EEUU. de 1877 a 1881
=?iso-8859-1?Q?Paco_Gonz=E1lez_Moya?= escribió:
> Saludos a todos, amigos listeros...
>
> Me encuentro con el siguiente problema. Necesitamos realizar una entrada de
> importes numericos de una forma similar a como ocurre en una calculadora:
> texto entrante por la derecha, puntos de mil, coma decimal, etc... pero no
> se debe permitir que el usuario teclee cifras incorrectas ni que
> caprichosamente ofrezca un clic en el cuadro, ni que tampoco cambie la
> posicion actual del cursor.
>
> Realmente, nuestro problemas se centra ahi: en el control de la posicion del
> cursor dentro de un TextBox.
> ¿Existe alguna forma de controlarlo con algún evento?
> ¿Podemos lograrlo?
> ¿Puede expandirese la definición de un TextBix con algun evento nuevo que
> diseniemos?
> ¿Existe alguna otra forma de hacerlo con los controles estandar de VB?
>
> Nos planteamos el uso de los controles estandar de VB 5.0, y por ello huimos
> de controles como el MaskEdit, etc...
>
> Por anticipado, muchas gracias, y perdon por la extension...