0
我已經在我的表單JList
組件中,並且我希望用戶從JList
中選擇項目以在項目名稱的現有JLayeredPanel
上添加新面板。還有就是我的面板:動態添加面板
package forme;
/**
*
* @author Administrator
*/
public class PanelProcesses extends javax.swing.JPanel {
/**
* Creates new form PanelProcesses
*/
public PanelProcesses() {
initComponents();
}
PanelProcesses(String name) {
initComponents();
jlbProcess.setText(name);
}
}
而且有方法主要形式時JList
上項目的用戶點擊:
private void jlProcessesMouseClicked(java.awt.event.MouseEvent evt) {
Process p = (Process) jlProcesses.getSelectedValue();
System.out.println(p.getName());
PanelProcesses pp = new PanelProcesses(p.getName());
pp.setOpaque(true);
// pp.setVisible(true);
jlpProcesses.add(pp);
jlpProcesses.repaint();
jlpProcesses.setVisible(true);
//this.setVisible(true);
}
問題是,當我點擊項目面板上沒有連接到JLayeredPanel
(jlpProcesses) 。有人知道我犯錯的地方嗎?通過調試模式,我看到新實例操作PanelProcess
被創建,屬性可見爲真。
謝謝。 :)
使用jlpProcesses.revalidate() –
具有變量名稱的JList jlProcess – bralek
1)爲了更好地提供幫助,請發佈[SSCCE](http://sscce.org/)。 2)'SwingX'在哪裏? –