如何把下面得到的好友列表在SWING的JTextArea里显示啊?import java.awt.*;
import java.awt.event.*;
import java.util.Collection;import javax.swing.*;
import javax.swing.border.*;
import org.jivesoftware.smack.*;import org.jivesoftware.smack.ChatManager;
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.MessageListener;
import org.jivesoftware.smack.RosterEntry;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.Chat;
import org.jivesoftware.smack.packet.Message;public class Gtalk extends JFrame implements ActionListener{
private JLabel accountLabel,passwordLabel;
private JTextField accountField;
private JPasswordField passwordField;
private JButton submitButton,resetButton;
private JPanel submitPanel;
private Roster roster;
public Gtalk(){
createUserInterface();
}
public void createUserInterface(){
Container cp=getContentPane();
cp.setLayout(null);
submitPanel=new JPanel();
submitPanel.setLayout(null);
submitPanel.setBounds(2, 2, 289, 120);
submitPanel.setBorder(new TitledBorder("Welcome To Gtalk!"));
cp.add(submitPanel);
accountLabel=new JLabel();
accountLabel.setBounds(8, 15, 60, 25);
accountLabel.setText("账号:");
submitPanel.add(accountLabel);
accountField=new JTextField();
accountField.setBounds(80, 18, 200, 22);
accountField.setHorizontalAlignment(JTextField.RIGHT);
submitPanel.add(accountField);
passwordLabel=new JLabel();
passwordLabel.setBounds(8, 42, 65, 25);
passwordLabel.setText("密码:");
submitPanel.add(passwordLabel);
passwordField=new JPasswordField();
passwordField.setBounds(80, 44, 200, 22);
passwordField.setHorizontalAlignment(JPasswordField.RIGHT);
submitPanel.add(passwordField);
submitButton=new JButton();
submitButton.setText("登陆");
submitButton.setBounds(218, 80, 62, 24);
submitPanel.add(submitButton);
submitButton.addActionListener(this);
resetButton=new JButton();
resetButton.setText("重置");
resetButton.setBounds(150, 80, 62, 24);
submitPanel.add(resetButton);
submitButton.addActionListener(this);
setTitle("Gtalk!");
setSize(300,320);
setResizable(false);
setLocation(450,140);
setVisible(true);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==submitButton){
submit();
}
else if(e.getSource()==resetButton){
reset();
}
}
public void submit(){
final String account,password;
if(accountField.getText().length()<4||passwordField.getPassword().length<4){
JOptionPane.showMessageDialog(null,"请输入用户名和密码!");
}
else {
account=accountField.getText();
password=new String(passwordField.getPassword());
try {
ConnectionConfiguration config=new ConnectionConfiguration("talk.google.com", 5222, "gmail.com");
config.setSASLAuthenticationEnabled(true);
XMPPConnection con=new XMPPConnection(config);
con.connect();
con.login(account, password);
roster=con.getRoster();
Collection<RosterEntry> entries = roster.getEntries(); for (RosterEntry entry : entries) {
System.out.println(entry);
}
}
catch (XMPPException e) {
System.out.println(e.getMessage());
}
}
}
public void reset(){
}
public static void main(String[] args){
Gtalk gtalk=new Gtalk();
gtalk.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
import java.awt.event.*;
import java.util.Collection;import javax.swing.*;
import javax.swing.border.*;
import org.jivesoftware.smack.*;import org.jivesoftware.smack.ChatManager;
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.MessageListener;
import org.jivesoftware.smack.RosterEntry;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.Chat;
import org.jivesoftware.smack.packet.Message;public class Gtalk extends JFrame implements ActionListener{
private JLabel accountLabel,passwordLabel;
private JTextField accountField;
private JPasswordField passwordField;
private JButton submitButton,resetButton;
private JPanel submitPanel;
private Roster roster;
public Gtalk(){
createUserInterface();
}
public void createUserInterface(){
Container cp=getContentPane();
cp.setLayout(null);
submitPanel=new JPanel();
submitPanel.setLayout(null);
submitPanel.setBounds(2, 2, 289, 120);
submitPanel.setBorder(new TitledBorder("Welcome To Gtalk!"));
cp.add(submitPanel);
accountLabel=new JLabel();
accountLabel.setBounds(8, 15, 60, 25);
accountLabel.setText("账号:");
submitPanel.add(accountLabel);
accountField=new JTextField();
accountField.setBounds(80, 18, 200, 22);
accountField.setHorizontalAlignment(JTextField.RIGHT);
submitPanel.add(accountField);
passwordLabel=new JLabel();
passwordLabel.setBounds(8, 42, 65, 25);
passwordLabel.setText("密码:");
submitPanel.add(passwordLabel);
passwordField=new JPasswordField();
passwordField.setBounds(80, 44, 200, 22);
passwordField.setHorizontalAlignment(JPasswordField.RIGHT);
submitPanel.add(passwordField);
submitButton=new JButton();
submitButton.setText("登陆");
submitButton.setBounds(218, 80, 62, 24);
submitPanel.add(submitButton);
submitButton.addActionListener(this);
resetButton=new JButton();
resetButton.setText("重置");
resetButton.setBounds(150, 80, 62, 24);
submitPanel.add(resetButton);
submitButton.addActionListener(this);
setTitle("Gtalk!");
setSize(300,320);
setResizable(false);
setLocation(450,140);
setVisible(true);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==submitButton){
submit();
}
else if(e.getSource()==resetButton){
reset();
}
}
public void submit(){
final String account,password;
if(accountField.getText().length()<4||passwordField.getPassword().length<4){
JOptionPane.showMessageDialog(null,"请输入用户名和密码!");
}
else {
account=accountField.getText();
password=new String(passwordField.getPassword());
try {
ConnectionConfiguration config=new ConnectionConfiguration("talk.google.com", 5222, "gmail.com");
config.setSASLAuthenticationEnabled(true);
XMPPConnection con=new XMPPConnection(config);
con.connect();
con.login(account, password);
roster=con.getRoster();
Collection<RosterEntry> entries = roster.getEntries(); for (RosterEntry entry : entries) {
System.out.println(entry);
}
}
catch (XMPPException e) {
System.out.println(e.getMessage());
}
}
}
public void reset(){
}
public static void main(String[] args){
Gtalk gtalk=new Gtalk();
gtalk.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Collection<RosterEntry> entries = roster.getEntries(); for (RosterEntry entry : entries) {
System.out.println(entry);
}
这段代码是显示好友列表的,我怎么写,才能显示在一个JTextArea里啊?以前碰到过JTextArea.append的用法,不知道对这里的这个,怎么使用,大家帮帮忙
怎么把这结果roster=con.getRoster();
Collection<RosterEntry> entries = roster.getEntries(); for (RosterEntry entry : entries) {
System.out.println(entry);
}
写在JList里面?
是这样吗,,还是报错哦前面定义了friendList=new JList();
friendList.setBounds(8, 110, 100, 350);
cp.add(friendList);按扭处理
Collection<RosterEntry> entries = roster.getEntries();
friendList.setListData((Vector)entries);