Bonjour, j'utilise une JMenuBar affiché verticalement et je n'arrive pas a centrer horizontalement le texte des JMenu (ici VerticalMenu class etendu de JMenu) avec la methode setHorizontalAlignment

Voila le code utilisé
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
menuBar=new jMenuBar();
menuBar.setLayout(new BoxLayout(menuBar,BoxLayout.PAGE_AXIS));
menuBar.add(Box.createVerticalGlue());
menu1=new VerticalMenu("scxsxsxsxsxation");
menu1.setHorizontalAlignment(SwingConstants.CENTER);
menuBar.add(menu1);
menuBar.add(Box.createVerticalGlue());
menu2=new VerticalMenu("uxscxsxs");
menu2.setHorizontalAlignment(SwingConstants.CENTER);
menuBar.add(menu2);
menuBar.add(Box.createVerticalGlue());
menu3=new VerticalMenu("scxsxsxsxsxation");
menu3.setHorizontalAlignment(SwingConstants.CENTER);
menuBar.add(menu3);
menuBar.add(Box.createVerticalGlue());
menuBar.setBorder(BorderFactory.createLineBorder(Color.black));
this.getContentPane().add(menuBar,BorderLayout.LINE_START);
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
public class VerticalMenu extends JMenu{
	VerticalMenu(String label){
		super(label);
		this.setFont(getFont().deriveFont((float) 22.0));
		JPopupMenu pm=getPopupMenu();
		pm.setLayout(new BoxLayout(pm,BoxLayout.PAGE_AXIS));
	}
 
	public Dimension getMinimumSize(){
		return new Dimension(265,30);
	}
 
	public Dimension getPreferredSize(){
		return new Dimension(265,140);
	}
 
	public Dimension getMaximumSize(){
		return new Dimension(265,140);
	}
 
	public void setPopupMenuVisible(boolean b){
		boolean isVisible=isPopupMenuVisible();
		if(b!=isVisible){
			if((b==true) && isShowing()){
				int x=0;
				int y=0;
				Container parent=getParent();
				if(parent instanceof JPopupMenu){
					x=0;
					y=getHeight();
				}
				else{
					x=getWidth();
					y=0;
				}
				getPopupMenu().show(this,x,y);
			}
			else{
				getPopupMenu().setVisible(false);
			}
		}
	}
}