Je veux fondamentalement remplir mon MainFrame avec un SplitPanel qui prendrait tout l'espace disponible dans le MainFrame. J'ai lu qu'un moyen de faire cela est d'ajouter un BorderPanel à la MainFrame, et ajouter le SplitPane au centre du BorderPanel.Remplissez le MainFrame avec le BorderPanel
object SwingApp extends SimpleSwingApplication {
def top = new MainFrame {
peer.setUndecorated(true) //with this hack it works but I don't feel like it's the purpose of the function
object splitPane extends SplitPane(Orientation.Vertical, new Button(), new Button())
contents = new BorderPanel {
import BorderPanel.Position._
val center = splitPane
layout(center) = Center
}
}
}
Mon problème est que le BorderPanel semble prendre la taille minimale que possible (ici 0) quand je veux qu'il en fait remplir tout le cadre.
J'ai trouvé une solution en mettant à l'intérieur du MainFrame
peer.setUndecorate(true)
mais il se sent sale et en lisant la doc, je ne sais pas pourquoi cela fonctionne. N'y at-il pas une meilleure façon?