我有空佈局的問題。 PROGRAMM有這樣的結構:零布局的元素放置
窗口(JFrame的)
- 卡式窗格(JTabbedPane中)
- ..某些選項卡..
- 包裝在JScrollPane中的重載JPanel(類表)
另外我有一個覆蓋JLabel(類看板)。
我嘗試在表中添加看板的一些實例並且什麼也沒有。如果我將Table的佈局從null更改爲BorderLayout(例如),則會顯示元素並且工作良好。 Oracle文檔中提到了3個步驟:1)設置空佈局,2)在子元素上調用setBounds(),3)在具有空佈局的元素上調用repaint()。這對我來說並不合適(非常非常好,真的)。
表放置代碼(窗口的構造函數):
Table table = new Table();
JScrollPane panel = new JScrollPane(table);
tabbedPanel.addTab("New tab", panel);
tabbedPanel.setSelectedIndex(tabbedPanel.getTabCount() - 1);
table.setPreferredSize(new Dimension(600, 400));
table.setSize(600, 400);
表的構造:
setDoubleBuffered(true);
setLayout(null);
setBounds(0,0,600,400);
Kanban kanban = new Kanban("Label text");
kanban.setBounds(10, 10, kanban.getWidth(), kanban.getHeight());
add(kanban);
有什麼不對?爲什麼元素不能繪製空佈局?
--- Add 我需要一個空佈局,因爲我需要標籤的點位置。
*我有一個空的問題佈局。*毫無疑問。 – Braj
如果(*我有一個空佈局問題。*),那麼不要使用空佈局 –