Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [JAVA]Lunghezza JTextfield

    E' possibile definire il numero di caratteri inseribili in un
    JTextField.
    grazie
    :sexpulp:

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    2,894
    E' possibile determinarne la lunghezza... Non sono a conoscenza di un metodo che fa ciò che vuoi te...

    Cmq puoi prendere la stringa inserita nella JTextField e vedere quanto è lunga...

    :gren:

  3. #3
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    devi aggiungere un KeyListener al field, al keyTyped o keyReleased controlli la lunghezza del testo e cancelli
    :adhone:

  4. #4


    E' possibile vedere la lunghezza ma io voglio definirla.
    Se sai come fare dimmelo please.
    grazie


  5. #5
    1) devi definire un nuovo tipo di Document il cui metodo "insertString" deve essere + o - così (preso pari pari dai tutorial della SUN: perchè non li guardate mai????)

    codice:
        public void insertString(int offs, String str, AttributeSet a) 
            throws BadLocationException {
    
            //This rejects the entire insertion if it would make
            //the contents too long. Another option would be
            //to truncate the inserted string so the contents
            //would be exactly maxCharacters in length.
            if ((getLength() + str.length()) <= maxCharacters)
                super.insertString(offs, str, a);
            else
                Toolkit.getDefaultToolkit().beep();
        }
    2) definisci un nuovo tipo di JTextField il cui metodo "createDefaultModel" ritorna una istanza del Document che hai definito in precedenza.

    3) il gioco è fatto.

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    7
    se vuoi che la textfield non superi, ad esempio, i 5 caratteri, attribuisci alla textfield un keyTyped che ha come parametro un keyEvent. Quando la lunghezza della stringa nella textfield supera 5, c'è il metodo consume del keyEvent che blocca ogni ulteriore inserimento

    void textfield_keyTyped(KeyEvent e)
    {
    if(textfield.getText().length()>4)
    e.consume();
    }

  7. #7

    EH bravo sanpa

    ci hai risolto un bel problemone, grazie

    damma&Manu

    :quote:

  8. #8
    Hmm....che modo sporco di far le cose.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.