📄 pop3.java~41~
字号:
package mail;
import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.mail.*;
import javax.mail.internet.*;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JLabel;
import java.awt.*;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JTextArea;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2005</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class POP3 extends JFrame {
public int k=0;
JPanel contentPane;
JLabel jLabel1 = new JLabel();
JTextField jTextField1 = new JTextField();
JLabel jLabel2 = new JLabel();
JTextField jTextField2 = new JTextField();
JButton jButton1 = new JButton();
JLabel jLabel3 = new JLabel();
JTextField jTextField3 = new JTextField();
JLabel jLabel4 = new JLabel();
JTextArea jTextArea1 = new JTextArea();
JLabel jLabel5 = new JLabel();
JTextField jTextField4 = new JTextField();
JLabel jLabel6 = new JLabel();
JTextField jTextField5 = new JTextField();
JLabel jLabel7 = new JLabel();
JTextField jTextField6 = new JTextField();
JButton jButton2 = new JButton();
JButton jButton3 = new JButton();
JLabel jLabel8 = new JLabel();
JLabel jLabel9 = new JLabel();
JTextArea jTextArea2 = new JTextArea();
JLabel jLabel10 = new JLabel();
JTextField jTextField7 = new JTextField();
public POP3() {
setResizable(false);
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
/**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void jbInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(null);
setSize(new Dimension(400, 520));
setTitle("收件箱");
jLabel1.setFont(new java.awt.Font("Dialog", Font.BOLD, 15));
jLabel1.setText("用 户 名:");
jLabel1.setBounds(new Rectangle(83, 15, 75, 29));
jTextField1.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jTextField1.setBounds(new Rectangle(166, 17, 150, 24));
jLabel2.setFont(new java.awt.Font("Dialog", Font.BOLD, 15));
jLabel2.setText("密 码:");
jLabel2.setBounds(new Rectangle(83, 44, 87, 23));
jTextField2.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jTextField2.setBounds(new Rectangle(165, 45, 150, 24));
jButton1.setBounds(new Rectangle(88, 445, 68, 24));
jButton1.setFont(new java.awt.Font("Dialog", Font.BOLD, 10));
jButton1.setText("确定");
jButton1.addActionListener(new POP3_jButton1_actionAdapter(this));
jLabel3.setFont(new java.awt.Font("Dialog", Font.BOLD, 15));
jLabel3.setText("POP3地址:");
jLabel3.setBounds(new Rectangle(74, 105, 98, 25));
jTextField3.setFont(new java.awt.Font("Dialog", Font.BOLD, 15));
jTextField3.setBounds(new Rectangle(167, 102, 148, 25));
jLabel4.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jLabel4.setText("内 容:");
jLabel4.setBounds(new Rectangle(17, 234, 66, 21));
jTextArea1.setEnabled(false);
jTextArea1.setFont(new java.awt.Font("幼圆", Font.BOLD, 13));
jTextArea1.setText("");
jTextArea1.setBounds(new Rectangle(13, 256, 376, 76));
jLabel5.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jLabel5.setText("邮件协议:");
jLabel5.setBounds(new Rectangle(83, 75, 81, 20));
jTextField4.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jTextField4.setBounds(new Rectangle(166, 74, 148, 23));
jTextField4.setText("pop3");
jLabel6.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jLabel6.setText("发 件 人:");
jLabel6.setBounds(new Rectangle(27, 164, 86, 23));
jTextField5.setEnabled(false);
jTextField5.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jTextField5.setText("");
jTextField5.setBounds(new Rectangle(104, 159, 236, 24));
jLabel7.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jLabel7.setText("主 题:");
jLabel7.setBounds(new Rectangle(30, 189, 73, 23));
jTextField6.setEnabled(false);
jTextField6.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jTextField6.setText("");
jTextField6.setBounds(new Rectangle(104, 188, 237, 21));
jButton2.setBounds(new Rectangle(164, 445, 70, 24));
jButton2.setFont(new java.awt.Font("幼圆", Font.BOLD, 10));
jButton2.setText("下一封");
jButton2.addActionListener(new POP3_jButton2_actionAdapter(this));
jButton3.setBounds(new Rectangle(241, 444, 70, 23));
jButton3.setFont(new java.awt.Font("幼圆", Font.BOLD, 10));
jButton3.setText("上一封");
jButton3.addActionListener(new POP3_jButton3_actionAdapter(this));
jLabel8.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jLabel8.setText("");
jLabel8.setBounds(new Rectangle(25, 131, 170, 19));
jLabel9.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jLabel9.setText("附 件:");
jLabel9.setBounds(new Rectangle(19, 334, 75, 21));
jTextArea2.setEnabled(false);
jTextArea2.setFont(new java.awt.Font("幼圆", Font.BOLD, 12));
jTextArea2.setBounds(new Rectangle(16, 356, 369, 74));
jLabel10.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jLabel10.setText("发送日期:");
jLabel10.setBounds(new Rectangle(24, 215, 82, 18));
jTextField7.setEnabled(false);
jTextField7.setFont(new java.awt.Font("幼圆", Font.BOLD, 15));
jTextField7.setBounds(new Rectangle(104, 217, 237, 21));
contentPane.add(jTextField6);
contentPane.add(jLabel7);
contentPane.add(jLabel6);
contentPane.add(jTextField5);
contentPane.add(jButton1);
contentPane.add(jButton2);
contentPane.add(jButton3);
contentPane.add(jTextArea2);
contentPane.add(jTextField4);
contentPane.add(jTextField2);
contentPane.add(jLabel2);
contentPane.add(jLabel1);
contentPane.add(jLabel5);
contentPane.add(jLabel3);
contentPane.add(jTextField3);
contentPane.add(jTextField1);
contentPane.add(jLabel8);
contentPane.add(jLabel9);
contentPane.add(jTextArea1);
contentPane.add(jLabel4);
contentPane.add(jLabel10);
contentPane.add(jTextField7);
}
public void jButton1_actionPerformed(ActionEvent e) {
k=0;
String protocol = jTextField4.getText();
String host = jTextField3.getText();
String username = jTextField1.getText();
String password = jTextField2.getText();
try
{
Session mySession = Session.getDefaultInstance (System.getProperties(), null);
Store myStore = mySession.getStore(jTextField4.getText());
myStore.connect (jTextField3.getText(),jTextField1.getText(), jTextField2.getText());
Folder myFolder = myStore.getFolder("INBOX");
myFolder.open(Folder.READ_ONLY);
int messagecount = myFolder.getMessageCount();
Message[] message = myFolder.getMessages (1, messagecount);
Address[] fromAddr = message[k].getFrom();
//System.out.println (fromAddr[0] + ":" + message[i].getSubject());
jLabel8.setText("共有" + messagecount + "封邮件") ;
jTextArea1.setText(message[k].getContent().toString());
jTextField5.setText(fromAddr[0].toString());
jTextField6.setText(message[k].getSubject().toString());
jTextField7.setText(message[k].getSentDate().toString());
myFolder.close(false);
myStore.close();
}
catch (MessagingException me)
{
System.err.println ("Messaging failure : " + me);
}
catch (Exception ex)
{
System.err.println ("Failure : " + ex);
}
}
public void jButton2_actionPerformed(ActionEvent e) {
try
{
Session mySession = Session.getDefaultInstance (System.getProperties(), null);
Store myStore = mySession.getStore(jTextField4.getText());
myStore.connect (jTextField3.getText(),jTextField1.getText(), jTextField2.getText());
Folder myFolder = myStore.getFolder("INBOX");
myFolder.open(Folder.READ_ONLY);
int messagecount = myFolder.getMessageCount();
if(k<messagecount-1)
k=k+1;
Message[] message = myFolder.getMessages (1, messagecount);
Address[] fromAddr = message[k].getFrom();
//System.out.println (fromAddr[0] + ":" + message[i].getSubject());
jTextArea1.setText(message[k].getContent().toString());
jTextField5.setText(fromAddr[0].toString());
jTextField6.setText(message[k].getSubject().toString());
myFolder.close(false);
myStore.close();
}
catch (MessagingException me)
{
System.err.println ("Messaging failure : " + me);
}
catch (Exception ex)
{
System.err.println ("Failure : " + ex);
}
}
public void jButton3_actionPerformed(ActionEvent e) {
if(k>0)
k=k-1;
try
{
Session mySession = Session.getDefaultInstance (System.getProperties(), null);
Store myStore = mySession.getStore(jTextField4.getText());
myStore.connect (jTextField3.getText(),jTextField1.getText(), jTextField2.getText());
Folder myFolder = myStore.getFolder("INBOX");
myFolder.open(Folder.READ_ONLY);
int messagecount = myFolder.getMessageCount();
Message[] message = myFolder.getMessages (1, messagecount);
Address[] fromAddr = message[k].getFrom();
//System.out.println (fromAddr[0] + ":" + message[i].getSubject());
jTextArea1.setText(message[k].getContent().toString());
jTextField5.setText(fromAddr[0].toString());
jTextField6.setText(message[k].getSubject().toString());
myFolder.close(false);
myStore.close();
}
catch (MessagingException me)
{
System.err.println ("Messaging failure : " + me);
}
catch (Exception ex)
{
System.err.println ("Failure : " + ex);
}
}
}
class POP3_jButton3_actionAdapter implements ActionListener {
private POP3 adaptee;
POP3_jButton3_actionAdapter(POP3 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton3_actionPerformed(e);
}
}
class POP3_jButton2_actionAdapter implements ActionListener {
private POP3 adaptee;
POP3_jButton2_actionAdapter(POP3 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton2_actionPerformed(e);
}
}
class POP3_jButton1_actionAdapter implements ActionListener {
private POP3 adaptee;
POP3_jButton1_actionAdapter(POP3 adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -