Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Isdate
Forum - Visual Basic 6 - Isdate

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
mash_mash (Normal User)
Expert


Messaggi: 230
Iscritto: 25/07/2007

Segnala al moderatore
Postato alle 13:18
Giovedì, 18/10/2007
Problema con l'istruzione Isdate :
vorrei che l'iserimento in una textbox sia interpretato come una data .
Ho preso come spunto questo codice che accetta solo valori numerici in una textbox :

Private Sub Textbox1_Change()
If IsNumeric(Textbox1.Text) Then
Textbox1.Text = Textbox1.Text
Else: msgbox ("inserimento non valido")
End If
End Sub

e vorrei fare la stessa cosa per le date , ma la textbox anche se attiva non accetta nessun carattere , come mai ?


PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 13:46
Giovedì, 18/10/2007
non ho capito bene,
tu vorresti ke la textbox accetti solo numeri??

Ultima modifica effettuata da GrG il 18/10/2007 alle 13:46
PM Quote
Avatar
BytE-FucK (Normal User)
Pro


Messaggi: 171
Iscritto: 09/10/2007

Segnala al moderatore
Postato alle 13:51
Giovedì, 18/10/2007
Non ho capito qual è il problema?
Vuoi controllare se il testo immmesso in una text?
Se si fai cosi,se vuoi controllare al click di un command:k:

Codice sorgente - presumibilmente VB.NET

  1. Private Sub Command1_Click()
  2. If IsDate(Text1.Text) Then
  3. Form1.Caption = "OK"
  4. Else
  5. Form1.Caption = "NO"
  6. End If
  7. End Sub



Se no spiegami mejo;)

PM Quote
Avatar
LuigiBiasi (Normal User)
Expert


Messaggi: 237
Iscritto: 15/09/2006

Segnala al moderatore
Postato alle 14:09
Giovedì, 18/10/2007
rispondendo alla domanda di mash_mash...
la isdate non la puoi fare nell'evento change, ma quando hai scritto tutta la data.
E' normale che non ti esca quello che scrivi, perchè quando scrivi un carattere per esempio 1 nell'evento change viene verificato se 1 è una data...
e 1 non è una data!
Perciò solo quando hai scritto tutto nella textbox puoi verificare se è il formato della data.
Io opterei x una soluzione migliore, cioè usare 3 text box, la prima per i giorni del mese, la seconda per i mesi e la terza per gli anni.
Ciao.

Ultima modifica effettuata da LuigiBiasi il 18/10/2007 alle 14:11
PM Quote
Avatar
mash_mash (Normal User)
Expert


Messaggi: 230
Iscritto: 25/07/2007

Segnala al moderatore
Postato alle 14:12
Giovedì, 18/10/2007
ok , ora ci provo.
Nell'esempio del 1^ post controllavo l'inserimento di caratteri (solo numeri) nell'evento change della textbox.

Vorrei poter fare lo stesso con le date.
Ovvero : se digito una data (es. 18/10/07) la textbox mi accetta l'input altrimenti no.

PM Quote
Avatar
LuigiBiasi (Normal User)
Expert


Messaggi: 237
Iscritto: 15/09/2006

Segnala al moderatore
Postato alle 14:16
Giovedì, 18/10/2007
segui il codice di byte-fuck...
Codice sorgente - presumibilmente VB.NET

  1. Private Sub Command1_Click()
  2. If not IsDate(Text1.Text) Then
  3. msgbox "inserisci la data"
  4. text1.text = ""
  5. End If
  6. End Sub


Ultima modifica effettuata da LuigiBiasi il 18/10/2007 alle 14:19
PM Quote
Avatar
BytE-FucK (Normal User)
Pro


Messaggi: 171
Iscritto: 09/10/2007

Segnala al moderatore
Postato alle 18:00
Giovedì, 18/10/2007
Infatti,finche nn sara data,ma la data non la riconosce quindi cancella il carattere...
O fai con un timer(nn consogliato) oppure al click di un pulsante(consigliato):k:

PM Quote
Avatar
P4p3r0g4 (Member)
Guru


Messaggi: 1319
Iscritto: 29/12/2006

Segnala al moderatore
Postato alle 14:37
Venerdì, 19/10/2007
oppure ti crei tu una funzione..
in fondo non dovrebbe essere difficile creare una funzione che ti cntrolla che nel primo carattere ci sia un numero nel terzo una sbarra e via dicendo...

PM Quote
Avatar
BytE-FucK (Normal User)
Pro


Messaggi: 171
Iscritto: 09/10/2007

Segnala al moderatore
Postato alle 19:17
Venerdì, 19/10/2007
Infatti,usa instring

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo