-1

Gmailアカウントからメールを受信するプロジェクトに取り組んでいますが、メールの受信に問題はありません。現在、ボタンとリストを備えたGUIを作成しています。リストには基本的に、Gmailの場合と同様に、受信したメールが含まれています。受信したメールをリストに入れるにはどうすればよいですか?どんな助けでもいただければ幸いです。ありがとう。

4

2 に答える 2

2

データではSwing、ウィジェットのモデルに関連付けられています。あなたの場合、あなたは使うことができますDefaultListModel(私はあなたが使っていると思いますJList)。
例:

final DefaultListModel model = new DefaultListModel();  
final JList list = new JList(model);   
//add elements to model  
for(String subject:emailSubjects){  
   model.add(subject);  
}  

表示するモデルに追加してください。
このコードはEDTにのみ存在する必要があります。

于 2012-09-22T17:40:52.120 に答える
1

JListを使用したい場合は、ここにコードサンプルが役立ちます。

public class JListDemo extends JFrame {

private JPanel contentPane;

/**
 * Launch the application.
 */
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
    public void run() {
    try {
        JListDemo frame = new JListDemo();
        frame.setVisible(true);
    } catch (Exception e) {
        e.printStackTrace();
    }
    }
});
}


public JListDemo() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 150, 303);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);

JList list = new JList();
list.setBorder(new TitledBorder(null, "JList Demo", TitledBorder.LEADING, TitledBorder.TOP, null, null));
list.setModel(new AbstractListModel() {
    String[] values = new String[] { "Google", "Yahoo", "Facebook ",
        "EBay" };

    public int getSize() {
    return values.length;
    }

    public Object getElementAt(int index) {
    return values[index];
    }
});
contentPane.add(list, BorderLayout.CENTER);
}
于 2012-09-22T18:01:25.537 に答える