在IntelliJ-IDEA中将项添加到JList

时间:2015-05-03 01:14:39

标签: java swing intellij-idea jlist

我不能为我的生活让这个工作,我已经尝试了至少15个小时。这是我的所有代码。请告诉我,当我运行它但是要添加到我的列表模型时,我想要添加到我的JList的项目没有显示我做错了。

这些是我的jlist和defaultlistmodel的声明。

private EventList issuesEventList = new BasicEventList();
public JList lstContacts;

在这下面是我的所有事件监听器没有太多的相关性,然后我的主要功能和我的功能来填充我的JList:

 public static void main(String[] args) throws SQLException {
    ContactsDB contactsDB = new ContactsDB();
    JFrame frame = new JFrame("VirtualRolodex");
    frame.setContentPane(new VirtualRolodex().mainPanel);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.pack();
    frame.setVisible(true);

    contactsDB.createContactsTable();
    contactsDB.loadContactsList();
}

public void fillList(EventList<String> contactsList){
    issuesEventList.clear();
    issuesEventList.addAll(contactsList);
    DefaultEventListModel issuesListModel = new DefaultEventListModel(issuesEventList);

    JList lstContacts = new JList(issuesListModel);
    lstContacts.setModel(issuesListModel);
}

这是我的GUI表格的类,然后我还有一个数据库类来处理数据库的写入和读取。

 public void loadContactsList() throws SQLException {
    ResultSet results;

    Statement statement = dbConnection.createStatement();
    String query = "SELECT companyName,firstName,lastName FROM contacts;";
    contactList.clear();
    contactList.add("New Contact");
    try {
        results = statement.executeQuery(query);
        try {
            while(results.next())
            {
                String company = results.getString("companyName");
                String first = results.getString("firstName");
                String last = results.getString("lastName");
                contactList.add(company + ": " + last + ", " + first);
            }

            fillList(contactList);



        } catch(SQLException e){
            System.err.println("Trouble accessing iterating through "+
                    "results in UsersDB.getAllUsers.");
            throw e;
        } finally {
            results.close();
        }
    } catch(SQLException e){
        System.err.println("Trouble accessing getting results in "+
                "ContactsDB.loadContactsList()");
        throw e;
    } finally {
        statement.close();
    }
}

这是该类的代码,用于加载一个包含我想要在JList中的联系人基本信息的事件列表。

请告诉我这里做错了什么。所有信息都传递回主类,但JList中没有显示任何内容。我也使用Intellij,它具有内置的GUI构建器,因此所有内容都已在GUI中设置。

0 个答案:

没有答案