Oppure

Loading
28/03/07 17:20
zubizarreta
ciao...mi sevirebbe una mano...

voglio ke nell mie TextBox si possano inserire solo numeri e non caratteri, e nel caso si inserirebbero caratteri il programma deve solo cancellare quel carattere lì. Il tutto nll'evento Change della TextBox.

Il mio metodo (ke tra l'altro non è neanke mio) è così: Private Sub txtprogramma_Change()
Dim car As String
If Text1.Text <> "" Then
If Len(Text1.Text) <> 0 Then
car = Asc(Mid(Text1.Text, Len(Text1.Text), 1))
If car < 48 Or car > 57 Then
Text1.Text = Mid(Text1.Text, 1, Len(Text1.Text) - 1)
End If
End If
Text1.SelStart = Len(Text1.Text)
End If
End Sub
Il problema che ha questo "mio" codice è questo: il cancellamento dell'eventuale carattere inserito avviene olo se il carattere viene inserito al fondo di tutta la strinha (come ultimo carattere); mentre se lo inserico in un'altra qualsiai posizione, non avviene il cancellamento,...
Io nn so cm spiegarlo in un altro modo; se mi avete capito e mi potete aiutare....aiutatemi...pleaseee
Grazie:k:
Ultima modifica effettuata da zubizarreta 28/03/07 17:24
aaa
28/03/07 20:00
P4p3r0g4
for x = 1 to len( text1.text )
if mid( text1.text , x , 1 ) = "0" or mid( text1.text , x , 1 ) = "1" or mid( text1.text , x , 1 ) = "2" or mid( text1.text , x , 1 ) = "3" or mid( text1.text , x , 1 ) = "4" or mid( text1.text , x , 1 ) = "5" or mid( text1.text , x , 1 ) = "6" or mid( text1.text , x , 1 ) = "7" or mid( text1.text , x , 1 ) = "8" or mid( text1.text , x , 1 ) = "9"

else
Text1.text = Replace(Text1.text, mid( text1.text , x , 1), Chr(0))
end if
next x

oppure fai un replace di tutti i caratteri diversi dai numeri.
aaa
29/03/07 13:51
zubizarreta
grazie...ma così..nn fa proprio qll ke voglio..io: se provo a mettere un carattere NON in ultima posizione, questo codice fa si ke mi cancelli tutti i numeri scritto dopo....
esempio:
ho quetso contenuto nella TextBox: 2548
1) se metto un carattere dopo l'8 , è tutto ok.. come anke il mio;
2) se lo metto x esempio tra i 5 e il 4, il carattere non viene messo, ma mi cancella il 4 e l'8.

cm posso fare? :-?
aaa
30/03/07 12:16
P4p3r0g4
e un
for x = 1 to 46
text1.text=replace(text1.text,Chr(x),"";)
next x
for x = 58 to 255
text1.text=replace(text1.text,Chr(x),"";)
next x
Ultima modifica effettuata da P4p3r0g4 30/03/07 12:17
aaa
30/03/07 19:31
zubizarreta
ok grazie PaP;
aaa
31/03/07 14:09
P4p3r0g4
nada
xò così è un po lento ogni volta che inserisci un carattere fa 245 operazioni.. cerca di sveltire la procedura.
aaa
01/04/07 11:14
Hacker
perchè proprio nell'evento change?:-|
aaa
01/04/07 13:15
P4p3r0g4
pensavo che facessi un programma che automaticamente togliesse il carattere..
aaa