繁体   English   中英

将文件添加到jlist

[英]Adding file to jlist

添加文件到jlist,我添加到jframe,一个jbutton,一个jtextview和一个jlist,我添加文件.txt,但实际上添加到jtextview,例如:C:/Windows/file.txt

JList.add(JList, null);

但是出了点问题

谢谢

您需要使用JList的列表模型。 您不能像已经完成的那样直接将其添加到JList中,因为JList具有处理各种对象的通用性。 比这复杂一点。

首先,您要确保您的JList实际上包含一个默认列表模型:

// Make sure the JList contains a List Model
try { 
    DefaultListModel dlm = (DefaultListModel)yourJListName.getModel(); 
}
catch (Exception e) {
    // Nope...so let's set one.
    yourJListName.setModel(new DefaultListModel()); 
}

现在,确保JList包含列表模型,您可以向其中添加项目。

// Get the current List Model for your JList
DefaultListModel dlm = (DefaultListModel)yourJListName.getModel();
// Declare a list to represent it.
JList list = new JList(dlm);
// Get the last position within the List so
// as to append to it.
int pos = list.getModel().getSize();
// Add the text from the JTextField into your JList.
dlm.add(pos, yourJTextFieldName.getText());

也许创建一个方法为您做添加:

public void addToJList(JList yourJList, String stringToAdd) {
    // Make sure the JList contains a List Model
    try { 
        DefaultListModel dlm = (DefaultListModel)yourJList.getModel(); 
    }
    catch (Exception e) {
        // Nope...so let's set one.
        yourJList.setModel(new DefaultListModel()); 
    }

    // Get the current List Model for your JList
    DefaultListModel dlm = (DefaultListModel)yourJList.getModel();
    // Declare a list to represent it.
    JList list = new JList(dlm);
    // Get the last position within the List so
    // as to append to it.
    int pos = list.getModel().getSize();
    // Add the text from the JTextField into your JList.
    dlm.add(pos, stringToAdd);
}

以及如何使用它:

addToJList(yourJListName, yourJTextFieldName.getText());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM