IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants Java Discussion :

[JSpinner]Sélection du texte [FAQ]


Sujet :

Composants Java

  1. #1
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 032
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 032
    Points : 23 767
    Points
    23 767
    Par défaut [JSpinner]Sélection du texte
    Bonjour,

    Encore une question sur les JSpinner. Je cherche à sélectionner tout le texte d'un JSpinner quand il gagne le focus. Mon problème vient du fait que JSpinner n'étend pas JTextComponent, donc il n'y a ni selectAll(), ni caret, ni rien de ce genre.
    Et pourtant, on peut sélectionner le contenu de ce composant avec la souris.

    J'ai bien regardé comment ils faisaient chez Sun pour les JTextComponent (sources Java), mais je suis un peu perdu. Quelqu'un aurait une idée ?

    Merci d'avance,

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  2. #2
    Nouveau membre du Club
    Inscrit en
    Juillet 2002
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Juillet 2002
    Messages : 28
    Points : 34
    Points
    34
    Par défaut
    Tu cherche à faire quoi exactement?
    Parcque le coup de la sélection j'ai pas trouvé comment faire, mais on peu peut-etre t'aider à trouver une autre solution...
    Si tu as envie de travailler, assieds-toi et attends que ça passe...

  3. #3
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 032
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 032
    Points : 23 767
    Points
    23 767
    Par défaut
    Moi non plus, je n'arrive pas à trouver...
    Ce que je cherche à faire, c'est sélectionner automatiquement tout le contenu de mon JSpinner quand il prend le focus (comme ça, si je tape quelque chose d'autre, ça remplace le texte ancien par le nouveau au lieu de l'insérer dedans...).
    J'espère être un peu plus clair

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  4. #4
    Membre habitué

    Profil pro
    Inscrit en
    Février 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 119
    Points : 138
    Points
    138
    Par défaut
    Hello,

    ced, tu peux tester ca et me dire si ca te vas ??

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
    import java.awt.event.*;
    import java.awt.*;
    import javax.swing.*;
    import javax.swing.text.*;
    /*
     * Created on 08-déc.-2003
     *
     * To change the template for this generated file go to
     * Window - Preferences - Java - Code Generation - Code and Comments
     */
     
    /**
     * @author Braim
     *
     * To change the template for this generated type comment go to
     * Window - Preferences - Java - Code Generation - Code and Comments
     */
     
     
    public class Test extends JFrame 
    {
     
        public Test() 
        {
            JSpinner jsp=new JSpinner();
            jsp.setPreferredSize(new Dimension(100,20));
            this.getContentPane().setLayout(new FlowLayout());
            this.getContentPane().add(jsp);
     
            ((JSpinner.DefaultEditor )jsp.getEditor ()).getTextField().addFocusListener(new FocusAdapter() 
            {
                public void focusGained(FocusEvent e) 
                {
                    System.out.println("Focus changé");
                    if (e.getSource() instanceof JTextComponent)
                    {
                        final JTextComponent textComponent=((JTextComponent)e.getSource());
                        SwingUtilities.invokeLater(new Runnable()
                        {
                            public void run() {
                                textComponent.selectAll();
                        }});                    
                    }
                }
     
                public void focusLost(FocusEvent e) 
                { 
    				System.out.println("Focus perdu");
                }
            });
            this.getContentPane().add(new JButton("test focus "));
    		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		pack();
            this.show();
        }
        public static void main(String[] args) 
        {
            new Test();
        }
    }

  5. #5
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 032
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 032
    Points : 23 767
    Points
    23 767
    Par défaut
    Excellent... Tu as trouvé le lien qu'il me manquait entre le JSpinner et les JTextField...

    Chapeau bas...

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  6. #6
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 032
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 032
    Points : 23 767
    Points
    23 767
    Par défaut
    Euh, juste une petite question subsidiaire... Si c'est pas trop abuser...
    A quoi sert ce bout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SwingUtilities.invokeLater(new Runnable() { 
         public void run() {...}
    }
    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  7. #7
    Membre habitué

    Profil pro
    Inscrit en
    Février 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 119
    Points : 138
    Points
    138
    Par défaut
    Hello,


    Je crois, j'ai pas testé que si tu ne fais pas ça, ca marchera pas ?

    Parce que la plupart des opérations ayant impact sur l'interface graphique après son initialisation ont lieu dans l'event-dispatching thread . Dès que l'interface est visible, la plupart des programmes sont dirigés par les événements tels que les clics de souris ou le clavier, qui sont toujours traités dans l'event-dispatching thread.
    Alors on doit aussi exécuter notre code dedans et donc, on doit utiliser la classe SwingUtilities qui propose les méthodes invokeLater et invokeLaterandwait.
    Voila je sais pas si c'est clair ?

  8. #8
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 032
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 032
    Points : 23 767
    Points
    23 767
    Par défaut
    Merci pour ces précisions. Effectivement, sans ce petit rajout, ça ne marche pas. Il va falloir que je me penche un peu plus sur cette question...

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  9. #9
    Membre habitué

    Profil pro
    Inscrit en
    Février 2003
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 119
    Points : 138
    Points
    138
    Par défaut
    Hello,

    Il en parle dans le tutorial de Sun.
    How to use threads

    Voila un exellent point de départ

  10. #10
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 032
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 032
    Points : 23 767
    Points
    23 767
    Par défaut
    Encore merci de ton aide.

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.NET] Sélection de texte dans un textbox
    Par olbi dans le forum Windows Forms
    Réponses: 5
    Dernier message: 25/08/2014, 10h26
  2. Sélection de texte
    Par shukin dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 06/05/2007, 11h30
  3. [outlook express] sélection de texte impossible
    Par aereno dans le forum Outlook Express / Windows Mail
    Réponses: 2
    Dernier message: 26/10/2005, 12h31
  4. [API Win32] Sélection de texte.
    Par Taxol dans le forum Windows
    Réponses: 2
    Dernier message: 06/08/2005, 18h10
  5. Empécher la sélection du texte des pages dans un WebBrowser
    Par DevelOpeR13 dans le forum Web & réseau
    Réponses: 2
    Dernier message: 05/06/2003, 18h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo