首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >布局部件纸板布局

问布局部件纸板布局
EN

Stack Overflow用户
提问于 2013-10-14 10:53:46
回答 1查看 157关注 0票数 0

因此,我只是创建一个简单的游戏屏幕,我想把我的两个按钮像这样:

​

​

我被建议使用CardLayout (我以前没有使用过布局),所以我阅读了java文档并创建了以下内容:

代码语言:javascript
复制
canvas.setLayout(new CardLayout());
JPanel card1 = new JPanel();
JPanel card2 = new JPanel();

//buttons
final JButton btn1 = new JButton(play);
btn1.setBorder(BorderFactory.createEmptyBorder());
btn1.setContentAreaFilled(false);
final JButton btn2 = new JButton(instructions);
btn2.setBorder(BorderFactory.createEmptyBorder());
btn2.setContentAreaFilled(false);
card1.add(btn1);
card2.add(btn2);    

canvas.add(card1);
canvas.add(card2);          

然而,它产生了这样的结果:

​

​

我似乎找不到任何关于卡片布局定位的信息。我的猜测是我根本不应该使用这个布局,那么我应该使用什么布局呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-14 10:57:13

卡片布局仅用于显示布局中的多个组件之一。您可以通过编程方式选择要显示的卡,其余的将隐藏在视图中。

如果在卡片布局中添加两个按钮,则只能看到一个按钮。你不应该在你的特定情况下使用它。您可以在X轴上使用Box布局

BoxLayout管理器是使用一个axis参数构造的,该参数指定要执行的布局类型。有四种选择: X_AXIS -组件从左到右水平排列。 Y_AXIS -组件从上到下垂直排列。 LINE_AXIS -组件是根据容器的ComponentOrientation属性在一行中布局单词的方式。如果容器的ComponentOrientation是水平的,那么组件是水平布局的,否则它们是垂直布局的。对于水平方向,如果容器的ComponentOrientation是从左到右,那么组件从左到右排列,否则它们就从右到左排列。对于垂直方向,组件总是从上到下排列。 PAGE_AXIS -组件是根据容器的ComponentOrientation属性在页面上布局文本行的方式。如果容器的ComponentOrientation是水平的,那么组件是垂直布局的,否则它们是水平布局的。对于水平方向,如果容器的ComponentOrientation是从左到右,那么组件从左到右排列,否则它们就从右到左排列。对于垂直方向,组件总是从上到下排列。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19358632

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档