java – 使用布局在屏幕中心设置面板
发布时间:2020-12-15 08:32:33 所属栏目:Java 来源:网络整理
导读:我试着通过使用将子面板的位置设置在父面板的中心 parent_panel.setLayout(new BorderLayout());parent_panel.add(child_panel,BorderLayout.CENTER); 但它会在水平屏幕的中间添加,但在顶部垂直添加. 如何将其垂直和水平添加到屏幕中心需要做什么? 解决方法
我试着通过使用将子面板的位置设置在父面板的中心
parent_panel.setLayout(new BorderLayout()); parent_panel.add(child_panel,BorderLayout.CENTER); 但它会在水平屏幕的中间添加,但在顶部垂直添加. 如何将其垂直和水平添加到屏幕中心需要做什么? 解决方法
如果我理解正确,你想要一个这样的界面:
+-------- Parent panel --------+ | | | | | +--- Child panel ----+ | | | | | | | | | | | | | | | | | | +--------------------+ | | | | | +------------------------------+ …并且您没有将其他组件添加到父面板. 如果是这种情况,你有两个我知道的选择(基于this question,我显然已经回答): >将GridBagLayout与空的GridBagConstraints对象一起使用,如下所示: parent_panel.setLayout(new GridBagLayout()); parent_panel.add(child_panel,new GridBagConstraints()); >使用BoxLayout,如下所示: parent_panel.setLayout(new BoxLayout(parent_panel,BoxLayout.PAGE_AXIS)); Box horizontalBox = Box.createHorizontalBox(); horizontalBox.add(Box.createHorizontalGlue()); horizontalBox.add(child_panel); horizontalBox.add(Box.createHorizontalGlue()); Box verticalBox = Box.createVerticalBox(); verticalBox.add(Box.createVerticalGlue()); verticalBox.add(horizontalBox); // one inside the other verticalBox.add(Box.createVerticalGlue()); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |