[英]How to add a JPanel to a JFrame with Runnable method
当我创建一个JPanel并将其添加到我的JFrame并将我的画布添加到它(空间)时,它将仅显示JPanel而不显示任何图形。 为什么当我希望它同时显示两个面板时只显示JPanel?
源代码: http : //pastebin.com/Cw9E0a8j
如果您打算将画布添加到jPanel中,请尝试更改源代码中的以下几行
原始代码:
frame.add(p);
frame.add(space, BorderLayout.CENTER);
建议代码:
p.add(space);
frame.add(p, BorderLayout.CENTER);
如果您愿意在JFrame中同时查看JPanel和画布,请尝试也给画布定位,但是使用不同的布局会更好。 试试给定的例子。
原始代码:
frame.setLayout(new BorderLayout());
frame.add(p);
frame.add(space, BorderLayout.CENTER);
建议的代码1:通过在边框布局中为JPanle提供位置。
frame.setLayout(new BorderLayout());
frame.add(p, BorderLayout.NORTH);
frame.add(space, BorderLayout.CENTER);
建议的代码2:通过更改JFrame的布局。
frame.setLayout(new GridLayout(0,2));
frame.add(p);
frame.add(space);
有关更多信息,请参阅官方文档[1]。
[1]。 https://docs.oracle.com/javase/tutorial/uiswing/layout/index.html
解决方案非常简单。 在您的代码中,您将“空格”放置在窗口的中央,因此您要告诉它占据整个屏幕。 您应该做的是这个。
frame.add(p, BorderLayout.EAST);//EAST for the rigth
frame.add(space, BorderLayout.WEST);//WEST for the left
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.