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

    [java] separatore migliaia in JTextField;

    salve raga come da titolo in una JTextField viene inserito un intero, vorrei che esso venga visulaizzato direttamente col separatore delle migliaia.

    c'è un metodo per farlo?
    ciao belli e grazie

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [java] separatore migliaia in JTextField;

    Originariamente inviato da fcorsa
    in una JTextField viene inserito un intero, vorrei che esso venga visulaizzato direttamente col separatore delle migliaia.

    c'è un metodo per farlo?
    --> JFormattedTextField
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    cioa non riesco a capire il funzionamento perche mi da numeri sballati e dimensioni in base al numero iniziale. ecco il codice:

    codice:
    JFormattedTextField input8 = new JFormattedTextField();
    int x = 0;
    Dimension sx = new Dimension(10,20);
    
    input8.setSize(sx);
    input8.setValue(x);	
    
    JPanel inputPanel8 = new JPanel();
    inputPanel8.add(input8);
    come risolvo?

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da fcorsa
    cioa non riesco a capire il funzionamento perche mi da numeri sballati e dimensioni in base al numero iniziale.
    Come dimensioni fisicamente il componente .... è un altro discorso (dipende se usi un layout manager o no e se sì, quale).

    Per il formato gestito, si possono fare svariate cose. Se ad esempio vuoi un JFormattedTextField che gestisce numeri interi nel formato del Locale di default:

    new JFormattedTextField(NumberFormat.getIntegerInstanc e());
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    io per le dimensionifacevo cosi:

    JTextField input14 = new JTextField(20);

    ma con JFormatterTextField come posso fare?

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da fcorsa
    io per le dimensionifacevo cosi:

    JTextField input14 = new JTextField(20);
    Che in realtà quel 20 (l'argomento) non è una dimensione "fisica". Indica il numero di colonne (nel senso di caratteri) che verrà poi usato per calcolare la larghezza "preferita", che dipende da vari altri fattori (il Font sicuramente).
    Quindi è comunque un dimensionamento "vago", tuttavia è pratico, semplice e tipico usare questo modo.

    Originariamente inviato da fcorsa
    ma con JFormatterTextField come posso fare?
    Premessa: JFormattedTextField estende JTextField.

    JFormattedTextField non ha un costruttore con argomento int columns come JTextField. Le colonne in JTextField si possono impostare, oltre che con il costruttore, anche con setColumns().

    E visto che JFormattedTextField estende JTextField ..... il metodo ce l'ha pure lui!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    ok grazie mille.
    l'unica cosa che ignoravo è il fatto che l'intero in JTextField era relativo alle colonne, poichè avevo guardato sbadatamente le API.

    volevo chiederti l'ultima cosa: il separatore delle migliaia appare quando sposto il focus.
    si può farlo apparire mentro digito il numero?

    ciao grazie

  8. #8
    ciao

    il separatore delle migliaia appare quando sposto il focus.
    si può farlo apparire mentro digito il numero?

    ciao e grazie

  9. #9
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da fcorsa
    il separatore delle migliaia appare quando sposto il focus.
    si può farlo apparire mentro digito il numero?
    codice:
    NumberFormatter formatter = new NumberFormatter();
    formatter.setCommitsOnValidEdit(true);
    formatter.setAllowsInvalid(false);
    
    JFormattedTextField txtField = new JFormattedTextField(formatter);
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  10. #10
    ciao andbin

    cosi mi funziona ma il separatore mi appare quando sposto il focus

    codice:
    JFormattedTextField input8 = new JFormattedTextField(NumberFormat.getIntegerInstance());
    andbin col codice da te descritto oltre a non apparire più i separatori delle migliaia ,appena sposto il focus mi scompaiono i numeri e rimane il campo vuoto. perchè?

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.