Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di JCave
    Registrato dal
    Oct 2002
    Messaggi
    132

    [VB6] La virgola al posto del punto

    Ho una textbox. La riempio scrivendoci 12345,6 e all'evento lostfocus la formatto con

    format(textbox, "#,##.00")

    e diventa 12.345,60 e fin qui tutto ok.
    Se invece scrivo 12345.6 diventa 123.456,00.

    Io vorrei utilizzare il tasto del punto del tastierino numerico per separare la parte decimale.

    Come faccio?

    Grazie!

  2. #2
    Ciao, avendo avuto lo stesso tuo problema, io l'ho risolto così:

    codice:
    If InStr(TuaTextBox.Text, ".") Then TuaTextBox.Text = Replace(TuaTextBox.Text, ".", ",")
    In questo modo l'utente può digitare sia il punto che la virgola.
    Se ha digitato il puntino questi viene sostituito dalla virgola.
    La successiva formattazione ("###,##0.00") del dato renderà poi corretto l'importo digitato nella forma "nnn.nnn,nn" (es. 123.000,00).


    Fammi sapere.

    Giulio C. - Roma

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da Giulio C.
    Ciao, avendo avuto lo stesso tuo problema, io l'ho risolto così:

    codice:
    If InStr(TuaTextBox.Text, ".") Then TuaTextBox.Text = Replace(TuaTextBox.Text, ".", ",")
    In questo modo l'utente può digitare sia il punto che la virgola.
    Se ha digitato il puntino questi viene sostituito dalla virgola.
    La successiva formattazione ("###,##0.00") del dato renderà poi corretto l'importo digitato nella forma "nnn.nnn,nn" (es. 123.000,00).


    Fammi sapere.

    La If e' ridondante ... puo' scrivere semplicemente

    codice:
    TuaTextBox.Text = Replace(TuaTextBox.Text, ".", ",")

  4. #4
    Originariamente inviato da oregon
    La If e' ridondante ... puo' scrivere semplicemente

    codice:
    TuaTextBox.Text = Replace(TuaTextBox.Text, ".", ",")
    Ciao Oregon.
    La "If" non credo sia ridondante perché verifica con "InStr" la presenza del punto nella casella di testo dato che l'utente può digitarlo o meno.
    Se utilizza il codice da te proposto non potrebbe dare un errore se il punto non è stato digitato?

    Ora non posso verificare.


    Giulio C. - Roma

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Fidati ... la If e' superflua ...

  6. #6
    Utente di HTML.it L'avatar di JCave
    Registrato dal
    Oct 2002
    Messaggi
    132
    Originariamente inviato da oregon
    La If e' ridondante ... puo' scrivere semplicemente

    codice:
    TuaTextBox.Text = Replace(TuaTextBox.Text, ".", ",")
    Grazie ragazzi funziona benissimo!


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.