有没有办法在Java中使用多于1个布局管理器。现在,我正在使用一个gridLayout来实现一个棋盘,但在它下面我想放一些其他的东西,但不是在一个gridLayout。也许是一个FlowLayout或其他布局。我会如何去做这件事? 谢谢!Java中的多个布局管理器
5
A
回答
6
有没有办法在Java中使用多于1个布局的 manager。
绝对。实际上,使用多个布局管理器是常态。
我该如何去做这件事?
任何Container
子类可以有一个LayoutManager
并包含子元素。并且这些子元素中的每一个本身都可以是带孩子的Container
。顶级框架下面最常用的容器是JPanel
。
对于你的榜样,你应该使用BorderLayout
为框架,把JPanel
在其中心位置的网格(因为这是一个得到所有可用的剩余空间时,其他位置都被赋予了他们的首选尺寸)另一个JPanel
与南方的“其他东西”位置。
更多详细信息请参见Swing tutorial on layout managers。
7
是的,所有你需要的是计划你在所有的UI布局;
例如,你需要把一些你的棋盘下(即窗口,主面板等),我通常会用一个BorderLayout的,在去基本的水平。
因此,假设我有一个名为masterPanel的JPanel,它包含我的国际象棋应用程序的所有组件。因此,代码将如下所示:
JPanel masterPanel = new JPanel(new BorderLayout());
JPanel chessBoardPanel = createChessboardPanel(); //assuming this method will return a
//JPanel with chess board using GridLayout
JPanel infoPanel = new JPanel(); //this is the panel that would contain info elements, that //may go below my chess board.
//Now add everything to master panel.
masterPanel.add(chessBoardPanel, BorderLayout.CENTER);
masterPanel.add(infoPanel, BorderLayout.PAGE_END);
//add masterPanel to your window (if required)
this.getContentPane().add(masterPanel);
相关问题
- 1. Java布局管理器
- 2. Java GUI布局管理器
- 3. Java布局管理器
- 4. 哪个布局管理器可以在Java中进行布局?
- 5. 在JAVA中使用多个布局管理器
- 6. Java布局管理器垂直中心
- 7. 布局管理器Qt中
- 8. Java布局管理器建议
- 9. 选择布局管理器 - Java
- 10. JPanel和Java布局管理器
- 11. 管理多个Visual Studio布局
- 12. PHP布局管理器
- 13. JavaScript/Backbone.js布局管理器
- 14. 设置布局管理器
- 15. jQuery布局管理器
- 16. GWT对Java布局管理器有多少支持?
- 17. java哪个布局管理器适合这个任务?
- 18. Flash中的布局管理器?
- 19. 选择一个布局管理器
- 20. Java Swing:需要BorderLayout中的“North”的布局管理器
- 21. 像Java for iOS中的布局管理器一样吗?
- 22. 的Java Swing - 在使用布局奇怪不同的布局管理器
- 23. 布局管理器可以产生多个JPanel吗?
- 24. 在iOS中管理布局
- 25. Java布局管理不显示面板
- 26. iPhone - UIViews的布局管理器?
- 27. 带布局管理器的PaintComponent
- 28. RecyclerView的自定义布局管理器
- 29. 布局管理器取消的jlable
- 30. 布局管理器的使用