如何将元素添加到已创建的 JList(Netbeans 生成)
How to add elements to an already created JList (Netbeans generated)
我正在使用 Java 在 Netbeans 中开发一个应用程序,并且被告知要使用 Netbeans 提供的 GUI 创建功能。因此,我无法编辑 initComponents();方法来编辑 JList 的创建并向其添加默认列表模型。
我尝试创建一个新的 JList,但这导致了无限循环。我从来没有通过自己编写代码来创建控件,只能使用 IDE 的 GUI 创建工具。
这是我目前拥有的:
private void formWindowActivated(java.awt.event.WindowEvent evt) {
//String to hold current patients data
String patientDetails;
//Take the arraylist from the model
ArrayList<IAccountStrategy> unapprovedPatients;
unapprovedPatients = model.getObservers();
//Create default list model to store the patients details
DefaultListModel<String> unapprovedPatientModel = new DefaultListModel<>();
IAccountStrategy xx;
//For loop to iterate through each element of unapprovedPatients
for(int i = 0; i < unapprovedPatients.size(); i++){
//get the current patients details and store them in a string variable
xx = unapprovedPatients.get(i);
patientDetails = xx.getAccountID() + xx.getUsername() + xx.getFirstname() + xx.getLastname();
//Add string variable to list model
unapprovedPatientModel.addElement(patientDetails);
}
//add list model to existing JList
listPatients.addElement(unapprovedPatientModel);
}
我想将列表模型中的所有元素输出到实际的 JList 中,然后让用户与列表本身进行交互。
提前致谢!
is it not possible to use the list as I want
您刚刚编写了创建 DefaultListModel 的代码。
所以现在您只需添加:
list.setModel( unapprovedPatientModel );
因此 JList 可以使用新创建的模型。
虽然这段代码的问题是每次window激活时都会执行这段代码。
但关键是您需要做的就是使用 setModel() 方法更新列表。如何在 IDE 中执行此操作取决于您。
我正在使用 Java 在 Netbeans 中开发一个应用程序,并且被告知要使用 Netbeans 提供的 GUI 创建功能。因此,我无法编辑 initComponents();方法来编辑 JList 的创建并向其添加默认列表模型。
我尝试创建一个新的 JList,但这导致了无限循环。我从来没有通过自己编写代码来创建控件,只能使用 IDE 的 GUI 创建工具。
这是我目前拥有的:
private void formWindowActivated(java.awt.event.WindowEvent evt) {
//String to hold current patients data
String patientDetails;
//Take the arraylist from the model
ArrayList<IAccountStrategy> unapprovedPatients;
unapprovedPatients = model.getObservers();
//Create default list model to store the patients details
DefaultListModel<String> unapprovedPatientModel = new DefaultListModel<>();
IAccountStrategy xx;
//For loop to iterate through each element of unapprovedPatients
for(int i = 0; i < unapprovedPatients.size(); i++){
//get the current patients details and store them in a string variable
xx = unapprovedPatients.get(i);
patientDetails = xx.getAccountID() + xx.getUsername() + xx.getFirstname() + xx.getLastname();
//Add string variable to list model
unapprovedPatientModel.addElement(patientDetails);
}
//add list model to existing JList
listPatients.addElement(unapprovedPatientModel);
}
我想将列表模型中的所有元素输出到实际的 JList 中,然后让用户与列表本身进行交互。
提前致谢!
is it not possible to use the list as I want
您刚刚编写了创建 DefaultListModel 的代码。
所以现在您只需添加:
list.setModel( unapprovedPatientModel );
因此 JList 可以使用新创建的模型。
虽然这段代码的问题是每次window激活时都会执行这段代码。
但关键是您需要做的就是使用 setModel() 方法更新列表。如何在 IDE 中执行此操作取决于您。