[英]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.