Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1
    Utente di HTML.it L'avatar di Buzzz
    Registrato dal
    Jan 2009
    Messaggi
    775

    [JAVA] - JTextField "vuota" quando clicco



    Io sto cercando di implementare un semplice ma molto carino effetto alle mie JTextField.
    Quando clicco questa JTextField, il testo all'interno di cancella, mentre quando clicco in qualsiasi altra parte, SE la JTextField è vuota, deve tornare il testo originale.

    Utilizzo questo codice:
    codice:
    public void mouseClicked(MouseEvent me) {
        if (me.getSource() == txtNome)
            txtNome.setText("");
        else {
            if ((txtNome.getText()).equals("")) {
                txtNome.setText("Nome Pizza");
            }
        }
    }
    Ma ho due problemi:
    1) quando apro il programma, il "cursore lampeggiante", mi si mette subito nella prima JTextField.
    C'è un modo per far si che questo non accada?
    Mi sembra di aver letto tempo di fa un un certo focus..

    2) quando clicco sulla JtextField il testo si cancella senza problemi, ma quando clicco al di fuori di questa Text, SE ESSA E' VUOTA, il testo non ritorna come in origine.. come mai?

    Grazie in anticipo!

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Perché usare un MouseListener quando c'è il FocusListener?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Utente di HTML.it L'avatar di Buzzz
    Registrato dal
    Jan 2009
    Messaggi
    775
    Una cosa del genere?

    codice:
    public class HomeAggiornaPizze extends JFrame implements MouseListener{
        private JTextField txtNome;
        .
        .
        .
    
        public HomeAggiornaPizze() {
            txtNome = new JTextField("Nome Pizza");
            txtNome.addMouseListener(this);
            .
            .
            .
        }
    
        public void mouseClicked(MouseEvent me) {
            if (me.getSource() == txtNome)
                txtNome.setText("");
            else {
                if ((txtNome.getText()).equals("")) {
                    txtNome.setText("Nome Pizza");
                }
            }
        }
    }
    Penso di aver fatto un pò confusione con MouseListener e FocusListener, perchè mi da errore durante l'esecuzione..

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755
    Quoto quanto detto da Alex'87 , ti semplificherebbe un po' le cose.
    Per come hai impostato il tuo codice implementa l'interfaccia FocusListener , assegna il listener alla textfield e utilizza adeguatamente i metodi focusGained (invocato quando il componente "prende" il focus) e focusLost (invocato quando il componente perde il focus).


  5. #5
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da Buzzz
    Una cosa del genere?
    Che c'entra con quello che ho detto?


    Originariamente inviato da Buzzz
    Penso di aver fatto un pò confusione con MouseListener e FocusListener, perchè mi da errore durante l'esecuzione..
    Che errore..? Non sono un indovino
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  6. #6
    Utente di HTML.it L'avatar di Buzzz
    Registrato dal
    Jan 2009
    Messaggi
    775
    Originariamente inviato da Alex'87
    Che c'entra con quello che ho detto?


    Che errore..? Non sono un indovino
    Un errore come questo, appena apro il programma:

    AWT-EventQueue-0" java.lang.UnsupportedOperationException: Not supported yet.

    E non mi fa modificare la casella di testo

  7. #7
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da Buzzz
    Un errore come questo, appena apro il programma:

    AWT-EventQueue-0" java.lang.UnsupportedOperationException: Not supported yet.

    E non mi fa modificare la casella di testo
    Ma qual è il codice alla fine? Hai messo il FocusListener?
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  8. #8
    Utente di HTML.it L'avatar di Buzzz
    Registrato dal
    Jan 2009
    Messaggi
    775
    Il codice è come quello che ho postato sopra,
    perchè sinceramente non ho capito, da quel sito, come utilizzare il Focus D:

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755
    Originariamente inviato da Buzzz
    Il codice è come quello che ho postato sopra,
    perchè sinceramente non ho capito, da quel sito, come utilizzare il Focus D:
    Ma hai letto quello che ti ho risposto sopra?Ti ho spiegato passo passo quello che devi fare..


  10. #10
    Utente di HTML.it L'avatar di Buzzz
    Registrato dal
    Jan 2009
    Messaggi
    775
    Originariamente inviato da zipangulu
    Ma hai letto quello che ti ho risposto sopra?Ti ho spiegato passo passo quello che devi fare..

    sisi, l'ho letto..
    ho anche provato a fare qualche prova ma non riesco a farlo funzionare D:

    E' la prima volta che sento parlare del FocusListener, e non ho capito bene come utilizzarlo..
    riusciresti a farmi un breve esempio, poi cerco di sistemarmelo io aggiustandomelo..

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.