我想安排如圖所示的組件。我可以通過使用gridbaglayout來做到這一點,但我想用borderlayout來做到這一點。我嘗試過,但無法達到我想要的。所以請在這裏指導我。 這裏的黑色矩形像的JPanel,按鈕等swt或swing中的borderlayout
回答
如果你只想用BorderLayout來做,你需要使用2個BorderLayout。如果你不能使用2個佈局,那麼你會被困在GridBagLayout中。 這就是我講的一個示範:
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
public class Test {
protected void initUI() {
JFrame frame = new JFrame("test");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel(new BorderLayout());
JPanel panel2 = new JPanel(new BorderLayout());
panel2.add(new JButton("NORTH"), BorderLayout.NORTH);
panel2.add(new JButton("CENTER"));
panel.add(panel2);
panel.add(new JButton("SOUTH"), BorderLayout.SOUTH);
panel.add(new JButton("EAST"), BorderLayout.EAST);
frame.add(panel);
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new Test().initUI();
}
});
}
}
邊境佈局的構成不工作的方式。這是邊境佈置示意圖:
您將無法在東區域的佈局放入頂部右上角 - 北總會浮起的右手邊。
編輯:顯示自從我使用Swing或AWT以來已經過了多長時間 - 當我做時,它是東,北,西,南和中心。
東,北,西,南,中心仍然有效 –
@a_horse_with_no_name:它們是有效的,儘管[Java文檔(HTTP ://docs.oracle.com/javase/tutorial/uiswing/layout/border.html)現在不鼓勵它們在Java 1.4以後的使用,聲明「在JDK版本1.4之前,各個領域的首選名稱是不同的,從點(例如,頂部區域的BorderLayout.NORTH)轉換爲我們例子中使用的常量的字典版本。我們的例子使用的常量是首選的,因爲它們是標準的並且使程序能夠適應具有不同方向的語言。「 –
- 1. BorderLayout Swing
- 2. Swing Java中的BorderLayout工作不正常
- 3. Java Swing BorderLayout調整難度
- 4. Java SWT或Swing的數據透視表
- 5. SWT/Swing - > Threads n'Hell
- 6. SWT中的Swing JSplitPane如何做?
- 7. 將SWT與SWING比較
- 8. SWT和Swing在mac上
- 9. SWT_AWT橋 - 在Swing問題SWT
- 10. 我可以將Swing或SWT組件嵌入到JavaFx2.0中嗎?
- 11. Java Swing:需要BorderLayout中的「North」的佈局管理器
- 12. 在SWING中模擬這個SWT Shell
- 13. 用於swt或swing的Java GUI開發替代
- 14. SWT +的Maven的Eclipse + = java.lang.UnsatisfiedLinkError中:沒有SWT碳-3346或SWT-碳swt.library.path
- 15. SWT視圖內的視頻Swing JPanel
- 16. 在android中的BorderLayout?
- 17. 從SWT和Swing混合幀(JFrame)
- 18. SWT瀏覽器 - Swing集成 - Mac - JDK 1.7
- 19. Java桌面應用程序:SWT與Swing
- 20. Borderlayout中Textarea maximalsize
- 21. Java/Swing:試圖讓BorderLayout和GridBagLayout搭配很好
- 22. Java Swing:在BorderLayout上更改邊框寬度/高度
- 23. Java Swing BorderLayout使一個區域不能調整大小
- 24. SWT用於Swing應用中的托盤圖標
- 25. SWT中的嵌入式Swing,圖形錯誤
- 26. 中心JButton在BorderLayout
- 27. 與GWT的BorderLayout
- 28. 使用的BorderLayout
- 29. SWT或JFACE滑塊
- 30. Borderlayout Gridlayout
簡單而優秀+1 – mKorbel
@Guillaume Polet:感謝這個不錯的例子。 –