0
我正在使用填充動態生成按鈕的項目使用JPanel
,讀取從DB填充的列表。
我有一個下一個和上一個按鈕來翻動頁面。 一切工作正常的前兩頁,但第三,當列表的剩餘大小小於32(最大的按鈕,以適應完美的頁面),只有5個按鈕仍然是「生成」,舊的即使我打電話給jPanel.removeAll()
,我也嘗試添加jPanel.revalidate()
。JPanel在removeall後仍然有按鈕()
請注意,列表內容不會更改。
下面是代碼:
private void loadCat(int catnr) { //loads second,third,etc. category page
jMainPanel.removeAll();
jMainPanel.revalidate();
for (int i = catnr; i < engine.LoadItems.catlist.size(); i++) {
if (i == catnr + 32) // more than 32 buttons do not fit per page
break;
final JButton btn = new JButton();
btn.setPreferredSize(new Dimension(100, 50));
btn.setText(engine.LoadItems.catlist.get(i));
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
//some code here (...)
}
});
jMainPanel.add(btn);
jMainPanel.setPreferredSize(new Dimension(436, 480));
jMainPanel.revalidate();
}
}
問:我如何獲得的面板顯示只有3頁的其餘項目(或將來的任何網頁上)?我究竟做錯了什麼?
截圖:
重繪後問題明確 – Akos 2015-03-13 08:52:15
謝謝@StanislavL – Akos 2015-03-13 09:00:27