Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Invité régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    avril 2012
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : avril 2012
    Messages : 20
    Points : 8
    Points
    8

    Par défaut Problème avec JSplitPane

    Bonsoir, je suis en train de créer une petite application ou j'utilise un JSplitPane.
    Mon problème est que je veux utiliser la méthode setLocationDivider(double) afin que celui-ci soit placé a 80%. Mais cela ne fonctionne pas.

    Si quelqu'un voit pourquoi cela ne fonctionne pas.
    Code :
    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
    public class CreatorFrame extends JFrame {
     
    	private JPanel mapArea = new JPanel();
    	private JPanel elementArea = new JPanel();
    	private JSplitPane container;
     
    	public CreatorFrame(){
     
    		/* Set Frame configuration */
    		setLocationRelativeTo(null);
    		setVisible(true);
    		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		setTitle(Constants.SOFTWARE_NAME);
    		setExtendedState(this.MAXIMIZED_BOTH);
    		setLayout(new BorderLayout());
     
    		/*Set elementArea configuration */
    		Element element = new Element("/res/Box_Green.png","BoxGreen");
    		elementArea.add(element);
     
    		container = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,mapArea,elementArea);
    		container.setRightComponent(elementArea);
    		container.setLeftComponent(mapArea);
     
    		container.setDividerLocation(0.5);
     
    		getContentPane().add(container, BorderLayout.CENTER);
     
    	}
    }

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro Renaud Warnotte
    Développeur informatique
    Inscrit en
    août 2006
    Messages
    2 603
    Détails du profil
    Informations personnelles :
    Nom : Homme Renaud Warnotte
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : août 2006
    Messages : 2 603
    Points : 4 564
    Points
    4 564

    Par défaut

    Il est probable que le splitPane doive être visible (et donc avec une taille connue) afin de pouvoir utiliser la fonction setDividerLocation(float).

    Essaye une peu de rajouter ceci a la fin de ton initialisation ?

    Code :
    1
    2
    3
    4
    5
    6
    7
    SwingUtilities.invokeLater(new Runnable()
    		{
    			public void run()
    			{
    				splitPane.setDividerLocation(0.5);
    			}
    		});

  3. #3
    Invité régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    avril 2012
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : avril 2012
    Messages : 20
    Points : 8
    Points
    8

    Par défaut

    Effectivement durant mes recherches j'ai vu des choses à propos de ca mais sans réelles raisons données. Je regarde ta solution dès que je rentre chez moi.

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •