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 :

JTextField et setPreferredSize et setColumns


Sujet :

Composants Java

  1. #1
    Invité
    Invité(e)
    Par défaut JTextField et setPreferredSize et setColumns
    Bonjour,

    Pourriez vous m'expliquer s'il vous plaît à quoi servent setPreferredSize et setColumns pour un JTextField. J'ai beau les changer tous les 2 cela ne change rien (ou en tout cas je n'ai pas vu les changement).

    Via Visual Editor sous Eclispe, il n'y a que le "size" qui dimensionne chez moi la taille du JTextField (dans le code c'est les 3eme et 4eme paramètre de "Rectangle").

    Au passage, existe-t-il un moyen de limiter le nombre de caractères que l'utilisateur peut rentrer dans ce JTextField ?


    Merci pour votre aide et bonne journée.

  2. #2
    Membre chevronné Avatar de schniouf
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 382
    Par défaut
    Citation Envoyé par nicofromChina
    Bonjour,
    Pourriez vous m'expliquer s'il vous plaît à quoi servent setPreferredSize et setColumns pour un JTextField. J'ai beau les changer tous les 2 cela ne change rien (ou en tout cas je n'ai pas vu les changement).
    Salut,
    setPreferredSize te permet de modifier la longueur ET la hauteur d'un JTextField. setColumns ne te modifie que la longueur.
    Si tu ne vois pas de différence, alors c'est à cause du layout de ton container (surement un JPanel). Essaie avec un FlowLayout, avec BorderLayout ça marche pas.

    Citation Envoyé par nicofromChina
    Au passage, existe-t-il un moyen de limiter le nombre de caractères que l'utilisateur peut rentrer dans ce JTextField ?
    Bien sur, avec un MaskFormatter associé à un JFormattedTextField. Tu peux également utiliser un PlainDocument.

    Citation Envoyé par nicofromChina
    Merci pour votre aide et bonne journée.
    De rien, bonne journée à toi aussi

  3. #3
    Invité
    Invité(e)
    Par défaut
    Je n'ai pas trouvé de JFormattedTextField dans la palette de Visual Editor. C'est que j'ai mal vu ou qu'il n'y est pas ?


    Merci encore

  4. #4
    Membre chevronné Avatar de schniouf
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 382
    Par défaut
    Citation Envoyé par nicofromChina
    Je n'ai pas trouvé de JFormattedTextField dans la palette de Visual Editor. C'est que j'ai mal vu ou qu'il n'y est pas ?
    Aucune idée, j'utilise pas Visual Editor... je programme tout à la main comme un grand
    En tout cas c'est un composant qui hérite de JTextField.

  5. #5
    Invité
    Invité(e)
    Par défaut
    En fait j'ai un peu de mal là avec ton MaskFormatter.

    Voilà le code que j'ai. Je savais avant de l'exécuter que je n'aurais pas ce que j'attendais mais je ne sais pas pourquoi.

    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
    private JFormattedTextField getJFormattedTextField() {
    	if (jFormattedTextField == null) {
    		jFormattedTextField = new JFormattedTextField();
    		maskFormatter = new MaskFormatter();
    		maskFormatter.setValidCharacters("0123456789.");
    		jFormattedTextField.setColumns(15);
    		jFormattedTextField.setText("127.0.0.1");
                    jFormattedTextField.setHorizontalAlignment(JFormattedTextField.CENTER);
    		jFormattedTextField.setFont(new Font("Dialog", Font.BOLD | Font.ITALIC, 13));
    		jFormattedTextField.setToolTipText("Please enter here the server IP address");
    		jFormattedTextField.setName("ip");
    		jFormattedTextField.setBounds(new Rectangle(86, 41, 123, 25));
    		jFormattedTextField.setMargin(new Insets(0, 2, 0, 2));
    		jFormattedTextField.setLocale(new Locale("en", "fr", ""));
    		jFormattedTextField.setNextFocusableComponent(getJButton());
    		jFormattedTextField.setPreferredSize(new Dimension(123, 25));
     
    	}
    	return jFormattedTextField;
    }
    Une idée ?

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

Discussions similaires

  1. [JtextField]Creer un masque pour Ip
    Par bibx dans le forum Composants
    Réponses: 8
    Dernier message: 11/01/2005, 17h31
  2. [JTextField] Problème de setText()
    Par deathwing dans le forum Composants
    Réponses: 4
    Dernier message: 09/06/2004, 10h54
  3. [JTextField][JDBC] Problème d'affichage
    Par deathwing dans le forum JDBC
    Réponses: 4
    Dernier message: 12/05/2004, 14h50
  4. Intercepter la tabulation sur un JTextField
    Par Fladnag dans le forum Composants
    Réponses: 2
    Dernier message: 29/03/2004, 11h05
  5. [JTextField] filtrer la saisie
    Par Merfolk dans le forum Composants
    Réponses: 7
    Dernier message: 04/03/2004, 19h57

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