Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883

    (java) problema nell'utilizzo di JFormattedTextField

    Ho il seguente codice:

    codice:
    package it.example;
    
    import java.awt.Container;
    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    import javax.swing.BoxLayout;
    import javax.swing.JFormattedTextField;
    import javax.swing.JFrame;
    import javax.swing.JTextField;
    import javax.swing.text.DateFormatter;
    
    public class JFormattedTextExample {
    
        public static void main(String args[]) throws ParseException {
            JFrame f = new JFrame("Dati");
            f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            Container content = f.getContentPane();
            content.setLayout(new BoxLayout(content, BoxLayout.PAGE_AXIS));
    
            DateFormat format = new SimpleDateFormat("dd/MM/yyyy");
            DateFormatter df = new DateFormatter(format);
            //Once you've specified the input format, you would then pass the formatter into the JFormattedTextField constructor, as shown below:
            JFormattedTextField dataJFTF = new JFormattedTextField(df);
            dataJFTF.setValue(new Date());
            content.add(dataJFTF);
    
            JTextField nomeJTF = new JTextField();
    
            content.add(nomeJTF);
    
            f.setSize(300, 100);
            f.setVisible(true);
        }
    }
    Il problema è il seguente,

    Step A: immetta una data nel primo campo
    Step B: passo il focus sul secondo campo
    Step C: cancello la data immessa al punto A
    Step D: passo il focus sul secondo campo

    Al passo D mi si verifica il mio problema, appena passo il focus sul secondo campo, nel primo campo viene visualizzata la data immessa al passo A

    Come faccio a dirgli che se cancello la data, non mi deve visualizzare nulla?

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    qualche idea?

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    niente di nuovo?

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Non capisco cosa c'entri il codice che hai postato (che visualizza un JFrame con un JTextField) con il problema che stai riscontrando... :master:


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    se leggi la guida a swing, con tutorial, è descritto proprio questo tipo di comportamento: una volta che hai inizializzato il tuo JFormattedTextField con un suo formato, ogni immissione in formato non valido verrà ignorato (ovvero, potrebbe essere ripristinato l'ultimo valore valido).
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    andrea79, nel caso di inserimento di un valore non valido, come faccio ad impedirgli di ripristinare l'ultimo valore immesso

    dal tutorial non riesco a capirlo

    Per Lele, esegui il codice che ho postato sopra, cancella la data che visualizza e premi sul secondo jtextfield. Nel primo jtextcomponent ricompare la data che hai cancellato, cosa che vorrei evitare

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    niente di nuovo?

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    non ho avuto modo di guardare, magari nel weekend ci butto un occhio.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    cerco sempre una soluzione al problema

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Ciao, scusa, allora, ho provato a giochicchiare un po' con i vari Formatters come suggerito nel sito della sun, ma non nè ho cavato un ragno dal buco

    http://java.sun.com/products/jfc/tsc...ftf/index.html

    http://java.sun.com/j2se/1.4.2/docs/...erFactory.html

    in particolare ho provato a giochicchiare con il nullFormat (ultimo costruttore)... ma mi rimette sempre le cose apposto.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.