Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126

    [VB] Identificare il contenuto di una textbox

    ciao
    devo identificare cosa scrive l'utente in una textbox, ad es. ho una textBox che deve contenere solo numeri e se l'utente scrive un carattere diverso da un numero mi deve apparire un messaggio di errore. Adesso già mi appare in quanto nel database il campo associato a quella textBox può contenere solo numeri, ma mi appare un errore.. non sò come chiamarlo.. diciamo proprio di visual basic, invece vorrei che il messaggio contenesse un errore personalizzato.. come faccio a capire se l'utente ha scritto o meno un numero in quella textBox ?
    Ciao
    Voglio l'alt+s anche per FF

  2. #2
    Utente di HTML.it L'avatar di vonkranz
    Registrato dal
    Sep 2001
    Messaggi
    1,387
    Nell'evento KeyDown e se il parametro KeyCode corrisponde ad un numero (p.e. CHR(keycode)="1"), visualizzi un errore.
    ...and I miss you...like the deserts miss the rain...

  3. #3
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    guarda come ho fatto ma non funziona:
    codice:
    Private Sub t_socion_LostFocus()
    If t_socion.text <> Chr(keycode = "1") Then
    MsgBox ("diverso")
    End If
    End Sub
    perchè?
    Voglio l'alt+s anche per FF

  4. #4
    Utente di HTML.it L'avatar di vonkranz
    Registrato dal
    Sep 2001
    Messaggi
    1,387
    Originariamente inviato da dops
    guarda come ho fatto ma non funziona:
    codice:
    Private Sub t_socion_LostFocus()
    If t_socion.text <> Chr(keycode = "1") Then
    MsgBox ("diverso")
    End If
    End Sub
    perchè?
    Il controllo sui dati inseriti nel textbox lo devi fare nell'evento validate e se c'e' qualche cosa di errato, visualizzi un msg di errore e imposti a true il parametro Cancel.

    Se vuoi impedire che vengano inseriti caratteri non validi nel momento esatto in cui vengono digitati, fai come ti ho detto io.

    L'evento lost focus non ha parametri, quindi il keycode che hai usato tu e' errato e non si riferisce al valore del carattere che e' stato immesso.
    ...and I miss you...like the deserts miss the rain...

  5. #5
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    scusa ma non riesco a capire mi fai un esempio?
    cioè volendo fare un controllo sull'evento Validate faccio così:
    Private Sub t_socion_Validate(Cancel As Boolean)
    If t_socion.text >= "0" Then
    Cancel = False
    Else
    MsgBox ("Puoi inserire solo numeri in questo campo")
    End If
    End Sub
    [/code]
    ma non funziona
    io voglio che l'utente possa scrivere qualsiasi numero in quella textBox tranne caratteri alfabetici.. come devo fare?
    Voglio l'alt+s anche per FF

  6. #6
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    vabbè ho risolto così:
    codice:
    Private Sub t_socion_Validate(Cancel As Boolean)
    If IsNumeric(t_socion.text) Then
    Cancel = False
    Else
    MsgBox ("Puoi inserire solo numeri in questo campo")
    End If
    End Sub
    se hai qualche altra soluzione ti prego di farmelo sapere
    Voglio l'alt+s anche per FF

  7. #7
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    cacchio un altro problema
    codice:
    Private Sub t_socion_Validate(Cancel As Boolean)
    If IsNumeric(t_socion.text) Then
    Cancel = False
    Else
    MsgBox ("Puoi inserire solo numeri nel Campo: 'Socio N.' ")
    t_socion.SetFocus
    End If
    End Sub
    dopo il msgBox il fuoco non và su quella textBox perchè?
    Voglio l'alt+s anche per FF

  8. #8
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    opss ho risolto:
    codice:
    Private Sub t_socion_Validate(Cancel As Boolean)
    If IsNumeric(t_socion.text) Then
    Cancel = False
    Else
    MsgBox ("Puoi inserire solo numeri nel Campo: 'Socio N.' ")
    t_socion.SetFocus
    t_socion.SelStart = 0
    t_socion.SelLength = Len(t_socion)
    Cancel = True
    End If
    End Sub
    Voglio l'alt+s anche per FF

  9. #9
    Utente di HTML.it L'avatar di JamesD
    Registrato dal
    Oct 2001
    Messaggi
    415
    Anche così:

    codice:
    Private Sub Text1_KeyPress(KeyAscii As Integer)
    
    If KeyAscii > 47 And KeyAscii < 58 Then
        KeyAscii = 0
        MsgBox "errore"
        Text1.SetFocus
    End If
    
    End Sub

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.