如何将数据全部附加到一个对话框中?

时间:2011-02-18 14:12:35

标签: java getter

我的地址簿计划有问题。我查看通讯录中的所有条目,但它们显示在不同的对话框中。第一个条目将显示在第一个对话框中,然后如果单击“确定”,下一个条目将显示在另一个对话框中。我希望所有条目都显示在一个对话框中。

这是我的getter方法:

public String getInfo(){
        String Info = "NAME\tADDRESS\tPHONE NO.\tE-MAIL ADD\n" +
                name +"\t " + add +"\t "+ phoneNo +"\t "+ email +"\n";
        return Info;
    }

这是我如何显示所有信息:

public void viewAll() {
        for (int i = 0; i < counter; i++) {
            JOptionPane.showMessageDialog(null, new JTextArea(entry[i].getInfo()));
        }
    }

希望你能帮助我......提前谢谢:)

2 个答案:

答案 0 :(得分:2)

要查看一个对话框中的所有条目,您可以尝试创建一个将添加所有条目的字符串。请参阅下面的代码:

 public String getInfo() {
   String content = "\t" + name + "\t"+ address + "\t\t" + telNo + "\t" + email;
   return content;
}


public class AddressBook
 public void viewAllEntry() {
        String addText = "NO\tNAME\tADDRESS\t\tTEL.NO\tEMAIL\t\n"; /<------HERE
        for (int i = 0; i <  addressBookEntryCounter; i++) {
            addText = addText+(i+1)+ entry[i].getInfo()+ "\n";     /<------HERE
        }
        JOptionPane.showMessageDialog(null, new JTextArea(addText));
    }

}

您还可以尝试 ninesided 的解决方案

答案 1 :(得分:2)

我会在黑暗中采取疯狂刺激 - 你希望所有的联系信息都显示在同一个JOptionPane中:

public void viewAll() {
    StringBuffer contactList = new StringBuffer();
    for (int i = 0; i < counter; i++) {
        contactList.append(entry[i].getInfo());
        contactList.append("\n");
    }
    JOptionPane.showMessageDialog(null, new JTextArea(contactList));
}