JSplitPane split = new JSplitPane(new JRootPane(....
Så du har indlejret en JRootPane som en af dine komponenter i din split.
Hvorfor har du dog gjort det :-)
En JRootPane er en grundkomponent for komponenter, som er roden af et GUI træ. En JRootPane indeholder en JLayeredPane, hvoraf det ene layer er en \"glass pane\", mens det anden indeholder JMenuBar og \"content pane\", som bare er en JComponent. Hvis man lægger andre ting herind, skal man lige vide, at optegningen af en JRootPane er specifik til det her scenario.
Efter som det er en root komponent du har fat i, skal du lægge komponenter ind som \"content\" i dens \"Content pane\". dvs.
JRootPane root = new JRootPane(); root.getContentPane().add(P);
Jeg har gjort det, da jeg skulle have et component, hvor jeg kunne ligge en JMenuBar :} Og dit eksempel har netop det problem at jeg ikke kan faa popup menuen(Samt alle mine JMenuBarItem) til at gaa ud over den JRootPane
Jeg tænkte det nok, det virker så nemt og bekvemt, ikke :-)
En JMenuBar er en almindelig component, som du kan placere hvor du lyster. Så jeg vil anbefale, at du bare laver en JMenuBar og smider NORTH i et panel i din splitpane. Du kan evt. fremhæve din menubar (hvis resten også er gråt), f.eks. med en BevelBorder:
menubar.setBorder(new BevelBorder(BevelBorder.RAISED)); panel.add(menubar, BorderLayout.NORTH); << Eller SOUTH for den sags skyld :-)
1) At man supporterer direkte en menubar i north, uden at folk skal kunne kode for meget, og der er ingen mulighed for andre typer komponenter direkte. 2) Man troede det nok ville være standard i de fleste root-containere 3) Man har ikke mulighed for at sætte nogen anden type component ind på den plads 4) Fordi månen er lavet af grøn ost :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.