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

Agents de placement/Fenêtres Java Discussion :

panel.add() qui n'affiche rien


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 14
    Par défaut panel.add() qui n'affiche rien
    Bonjour,

    Je suis entrain de faire un petit formulaire et j'ai un problème pour attacher un JButton "browserButton" et un JTextField "location" à un panel "fr1". Le code du panel est ci-dessous et lorsque j'execute le programme, le bouton et le textfield ne s'affiche pas.

    Est-ce-que quelqu'un aurait une idée.

    Merci

    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
     
    public class Form extends JFrame implements ActionListener {
     
    	JTextField location = new JTextField();
    	JButton browserButton = new JButton("Browse");
     
     
    	public static void main(String[] args) {
     
            JFrame frame = new JFrame();
            frame.setTitle("Properties Configurator");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            JComponent panel = new Form().buildPanel();
            frame.getContentPane().add(panel);
            frame.pack();
            frame.setVisible(true);
     
        }
     
        private JComponent buildPanel() {
            JTabbedPane tabbedPane = new JTabbedPane();
            tabbedPane.putClientProperty("jgoodies.noContentBorder", Boolean.TRUE);
     
            tabbedPane.add("I/O parameters",    setIOParam());
     
            return tabbedPane;
        }
     
     
        private JComponent setIOParam(){
     
        	JPanel panel = new JPanel();
        	panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
            getContentPane().add(panel);
     
            JPanel fr1 = new JPanel();
            fr1.setBorder(new TitledBorder("Input database"));
     
            BoxLayout layout = new BoxLayout(fr1, BoxLayout.X_AXIS);
            fr1.setLayout(layout);
     
            browserButton.addActionListener(this);
            fr1.add(new JLabel("Source file:"));
            fr1.add(location);
            fr1.add(browserButton);
     
            panel.add(fr1);
        }

  2. #2
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 052
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 052
    Par défaut
    Salut,

    Il y a une erreur dans ton code. La méthode setIOParam() (qui devrait se nommer getIOParam()) soit retourner un JComponent, probablement panel.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 14
    Par défaut
    C'est juste, j'ai oublié de la copier (j'ai juste mis un tout petit bout de ma methode), mais la methode se termine bien par "return panel".

    De toute manière si j'avais oublié de retourner un panel, j'aurais eu une erreur de compilation

  4. #4
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 052
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 052
    Par défaut
    Certes, mais du coup, avec le return, les composants sont affichés (textfield + bouton) !

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2006
    Messages : 14
    Par défaut
    Ben non, justement, et c'est ca mon problème: Ca ne s'affiche pas

  6. #6
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 052
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 052
    Par défaut
    En lançant le code que tu as posté (en ajoutant le return et implémentant le listener manquant, ainsi qu'une parenthèse oubliée), le bouton (browserButton) et le field (location) sont affichés !
    Images attachées Images attachées  

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

Discussions similaires

  1. Panel qui n'affiche rien
    Par fortman1987 dans le forum Général Java
    Réponses: 1
    Dernier message: 07/03/2013, 23h25
  2. Créer un environnement qui n'affiche rien
    Par xiourf dans le forum Mise en forme
    Réponses: 5
    Dernier message: 27/05/2007, 18h59
  3. Programme qui n'affiche rien
    Par Premium dans le forum OpenGL
    Réponses: 2
    Dernier message: 03/12/2006, 22h43
  4. SplashScreen qui n'affiche rien ?
    Par Baptiste Wicht dans le forum Interfaces Graphiques en Java
    Réponses: 14
    Dernier message: 26/06/2006, 15h15
  5. [LG]Programme qui n'affiche rien
    Par ousunas dans le forum Langage
    Réponses: 4
    Dernier message: 17/02/2004, 20h38

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