亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? jmail.java

?? java的簡單例子
?? JAVA
字號:
package jws.awt.net;

// Copyright 1997, John Webster Small
// All rights Reserved

import java.io.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import jws.net.*;
import jws.awt.event.*;
import jws.awt.*;

public class JMail extends WinFrame
{
  private File saveState;

  private ChoiceCardPanel folderViews;
  private Hashtable folders;
  private SMTPwConfig smtp;
  private POP3wConfig pop3;

  private PreviewEmailPanel preview;
  private SMTPPOP3Config smtpPop3Config;

  private final static String Inbox = "Inbox";
  private final static String Outbox = "Outbox";
  private final static String SentItems = "Sent Items";

  private Button newMsgButton = new Button("New message");
  private Button replyToButton = new Button("Reply to");
  private Button replyToAllButton = new Button("Reply to all");
  private Button forwardButton = new Button("Forward");
  private Button sendXcvButton = new Button("Send & receive");
  private Button deleteButton = new Button("Delete");

  private Mailbox mailbox;
  ItemListener enableButtonsListener;

  final void sendXcv()
  {
    try  {
      Vector outbox = (Vector) folders.get(Outbox);
      if (smtp.sendMail(this,outbox.elements()))  {
        for (int i = 0; i < outbox.size(); i++)
          addToFolder(SentItems,(Email)outbox.elementAt(i));
        outbox.removeAllElements();
        ((List) folderViews.getItem(Outbox)).removeAll();
      }
      Vector incoming = pop3.readMail(this,false);
      for (int i = 0; i < incoming.size(); i++)
        addToFolder(Inbox,(Email)incoming.elementAt(i));
    } catch (Exception e) {
      new WinFrame("Sending and Receiving Email",e);
    }
  }

  private final void enableButton(Button b, boolean enabled)
  {
    if (b.isEnabled() != enabled)
      b.setEnabled(enabled);
  }

  final void enableButtons()
  {
    Email email = getSelectedEmail();
    preview.preview(email);
    if (email == null)  {
      enableButton(replyToButton,false);
      enableButton(replyToAllButton,false);
      enableButton(forwardButton,false);
      enableButton(deleteButton,false);
    }
    else {
      String folder = folderViews.getSelectedItem();
      if (folder.equals(Outbox))  {
        enableButton(replyToButton,false);
        enableButton(replyToAllButton,false);
        enableButton(forwardButton,true);
        enableButton(deleteButton,true);
      }
      else  {
        enableButton(replyToButton,true);
        enableButton(replyToAllButton,true);
        enableButton(forwardButton,true);
        enableButton(deleteButton,true);
      }
    }
    invalidate();
  }

  final public Email getSelectedEmail()
  {
    try  {
      int folderIdx = folderViews.getSelectedIndex();
      List folderList = (List) folderViews.getItem(folderIdx);
      int folderListIdx = folderList.getSelectedIndex();
      String folder = folderViews.getSelectedItem();
      Vector letters = (Vector) folders.get(folder);
      return (Email) letters.elementAt(folderListIdx);
    } catch (Exception e) { }
    return null;
  }

  final public void viewSelectedEmail()
  {
    Email email = getSelectedEmail();
    if (email == null)
      return;
    if (folderViews.getSelectedItem().equals(Outbox))
      new ComposeEmail(email.getSubject(),mailbox,email)
        .setVisible(true);
    else
      new ViewEmail(mailbox,email).setVisible(true);
  }

  final protected void addFolder(String folder)
  {
    if (!folders.containsKey(folder))  {
      List letterList = new List();
      letterList.addActionListener
        (
          new ActionAdapter()
          {
            public void actionPerformed(ActionEvent e)
              { viewSelectedEmail(); }
          }
        );
      letterList.addItemListener(enableButtonsListener);
      folderViews.add(folder, letterList);
      folders.put(folder,new Vector());
    }
  }

  final protected void removeFolder(String folder)
  {
    if (folders.containsKey(folder)
      && !folder.equals(Inbox)
      && !folder.equals(Outbox)
      && !folder.equals(SentItems))  {
      folderViews.remove(folder);
      folders.remove(folders.get(folder));
    }
  }

  private final static String spaces = new String
    ("                                              ");

  private final static void appendField
    (StringBuffer out, String field, int width)
  {
    if (field.length() < width)  {
      out.append(field);
      out.append(spaces.substring(0,width-field.length()));
    }
    else
      out.append(field.substring(0,width));
  }

  final public void addToFolder
    (String folder, Email email)
  {
    if (!folders.containsKey(folder))
      addFolder(folder);
    if (folders.containsKey(folder))  {
      List letterList = (List) folderViews.getItem(folder);
      Vector letters = (Vector) folders.get(folder);
      if (letters.contains(email))  {
        int letterIdx = letters.indexOf(email);
        letters.removeElementAt(letterIdx);
        letterList.remove(letterIdx);
      }
      letters.addElement(email);
      StringBuffer item = new StringBuffer();
      if (folder.equals(Outbox)
        || folder.equals(SentItems))
        appendField(item,email.getToAsString(),30);
      else
        appendField(item,email.getFrom(),30);
      appendField(item,email.getSubject(),30);
      appendField(item,email.getDate(),30);
      letterList.add(item.toString());
    }
  }

  final private void addFolders(Hashtable folders)
  {
    Enumeration folderNames = folders.keys();
    while (folderNames.hasMoreElements())  {
      String folderName = (String) folderNames.nextElement();
      addFolder(folderName);
      Enumeration letters = ((Vector)folders.get(folderName)).elements();
      while (letters.hasMoreElements())
        addToFolder(folderName,(Email)letters.nextElement());
    }
  }


  public void removeFromFolder
    (String folder, Email email)
  {
    if (folders.containsKey(folder))  {
      List letterList = (List) folderViews.getItem(folder);
      Vector letters = (Vector) folders.get(folder);
      if (letters.contains(email))  {
        int letterIdx = letters.indexOf(email);
        letters.removeElementAt(letterIdx);
        letterList.remove(letterIdx);
      }
    }
  }

  public void deleteEmail()
  {
    try  {
      int folderIdx = folderViews.getSelectedIndex();
      List letterList = (List) folderViews.getItem(folderIdx);
      int letterIdx = letterList.getSelectedIndex();
      String folder = folderViews.getSelectedItem();
      Vector letters = (Vector) folders.get(folder);
      letters.removeElementAt(letterIdx);
      letterList.remove(letterIdx);
      enableButtons();
    } catch (Exception e) {
      new WinFrame("Deleting mail",e);
    }
  }

  private void init(File saveState)
  {
    this.saveState = saveState;
    enableButtonsListener =
      new ItemListener()
      {
        public void itemStateChanged(ItemEvent e)
          { enableButtons(); }
      };
    folderViews = new ChoiceCardPanel("Folders");
    folderViews.addItemListener(enableButtonsListener);
    folders = new Hashtable();
    boolean restored = false;
    if (saveState.exists())    
      try  {
        FileInputStream fis = new FileInputStream(saveState);
        ObjectInputStream ois = new ObjectInputStream(fis);
        smtp = (SMTPwConfig) ois.readObject();
        pop3 = (POP3wConfig) ois.readObject();
        Hashtable savedFolders = (Hashtable) ois.readObject();
        ois.close();
        addFolders(savedFolders);
        restored = true;
      } catch (Exception e) {
        new WinFrame("Restoring JMail state",e);
      }
    if (!restored)  {
      addFolder(Inbox);
      addFolder(Outbox);
      addFolder(SentItems);
      smtp = new SMTPwConfig();
      pop3 = new POP3wConfig();
    }
    smtpPop3Config = new SMTPPOP3Config(smtp,pop3);
    mailbox = new Mailbox()
      {
        public void post(Email email)
          { addToFolder(Outbox,email); }
        public String getFrom()
          { return smtp.getSenderEmailAddress(JMail.this); }
      };
    Panel p = new Panel();
    p.add(newMsgButton);
    newMsgButton.addActionListener
      (
        new ActionListener()
        {
          public void actionPerformed(ActionEvent e)
          {
            new ComposeEmail
              ("New Message",mailbox).setVisible(true);
          }
        }
      );
    p.add(replyToButton);
    p.add(replyToAllButton);
    p.add(forwardButton);
    p.add(sendXcvButton);
    p.add(deleteButton);
    add("North",p);

    add("Center",new InsetPanel(10,10,10,10,folderViews));
    preview = new PreviewEmailPanel(4,10);
    add("South",new InsetPanel(10,10,10,10,preview));
    pack();
    sendXcvButton.addActionListener
      (
        new ActionListener()
        {
          public void actionPerformed(ActionEvent e)
          {
            sendXcv();
          }
        }
      );
    deleteButton.addActionListener
      (
        new ActionListener()
        {
          public void actionPerformed(ActionEvent e)
            { deleteEmail(); }
        }
      );
    replyToButton.addActionListener
      (
        new ActionListener()
        {
          public void actionPerformed(ActionEvent e)
          {
            Email em = getSelectedEmail()
              .replyTo(JMail.this);
            new ComposeEmail(em.getSubject(),
              mailbox,em).setVisible(true);
          }
        }
      );
    replyToAllButton.addActionListener
      (
        new ActionListener()
        {
          public void actionPerformed(ActionEvent e)
          {
            Email em = getSelectedEmail()
              .replyToAll(JMail.this);
            new ComposeEmail(em.getSubject(),
              mailbox,em).setVisible(true);
          }
        }
      );
    forwardButton.addActionListener
      (
        new ActionListener()
        {
          public void actionPerformed(ActionEvent e)
          {
            Email em = getSelectedEmail()
              .forward();
            new ComposeEmail(em.getSubject(),
              mailbox,em).setVisible(true);
          }
        }
      );
    enableButtons();
    MenuBar mb = new MenuBar();
    Menu m = new Menu("Mail");
    MenuItem mi = new MenuItem("Options");
    mi.addActionListener
      (
        new ActionListener()
        {
          public void actionPerformed(ActionEvent e)
            { smtpPop3Config.configure(JMail.this,"JMail"); }
        }
      );
    m.add(mi);
    mb.add(m);
    m = new Menu("Help");
    mi = new MenuItem("Feedback");
    mi.addActionListener
      (
        new ActionListener()
        {
          public void actionPerformed(ActionEvent e)
          {
            Email em = new Email(
              "To: jsmall@laser.net\n" +
              "Subject: JMail tech support\n\n" +
              "Please send me your questions, comments, suggestions!"); 
            new ComposeEmail(em.getSubject(),
              mailbox,em).setVisible(true);
          }
        }
      );
    m.add(mi);
    mi = new MenuItem("About");
    mi.addActionListener
      (
        new ActionListener()
        {
          public void actionPerformed(ActionEvent e)
          {
            final WinDialog wd =
              new WinDialog(JMail.this,"About",true);
            Panel ap = new Panel();
            ap.setLayout(new GridBagLayout());
            GridBagConstraints c = new GridBagConstraints();
            c.gridwidth = GridBagConstraints.REMAINDER;
            ap.add(new Label("JMail  1.1.3.01"),c);
            ap.add(new Label("100% Pure Java (tm)"),c);
            ap.add(new Label("Mail Client"),c);
            wd.add("Center",new InsetPanel(10,10,10,10,ap));
            Button ok = new Button("Ok");
            ap = new Panel();
            ap.add(ok);
            wd.add("South",ap);
            ok.addActionListener
              (
                new ActionListener()
                {
                  public void actionPerformed(ActionEvent e)
                    { wd.dispose(); }
                }
              );
            wd.pack();
            wd.setVisible(true);
          }
        }
      );
    m.add(mi);
    mb.add(m);
    setMenuBar(mb);
  }

  public JMail(File saveState)
  {
    super(saveState.getName());
    init(saveState);
  }

  public JMail(String pathname)
  {
    this(new File(pathname));
  }

  public void save()
  {
    try  {
      FileOutputStream fos = new FileOutputStream(saveState);
      ObjectOutputStream oos = new ObjectOutputStream(fos);
      oos.writeObject(smtp);
      oos.writeObject(pop3);
      oos.writeObject(folders);
      oos.close();
    } catch (Exception e) {
      new WinFrame("JMail saving state",e);
    }
  }

  public void dispose()
  {
    save();
    super.dispose();
  }
    

  public static void main(String[] args)
  {
    try  {
      new JMail(args[0]).appMainWindow().setVisible(true);
    } catch (Exception e)  {
      new JMail("JMail").appMainWindow().setVisible(true);
    }
  }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲va综合人人澡精品 | 亚洲图片一区二区| 亚洲国产欧美日韩另类综合| 精品一区二区免费| 色妹子一区二区| 久久综合色鬼综合色| 一区二区三区av电影| 国产精品自在在线| 3751色影院一区二区三区| 亚洲欧洲国产日本综合| 国产综合久久久久影院| 欧美日韩激情在线| 亚洲欧美日本韩国| 成人一区二区三区视频在线观看 | 欧美亚一区二区| 亚洲国产精品精华液2区45| 日本不卡视频在线观看| 欧美午夜精品久久久久久孕妇| 国产精品视频一区二区三区不卡| 精品一区二区三区的国产在线播放 | 91福利资源站| 国产精品久久久久毛片软件| 国产一区二区三区久久悠悠色av | 国产亚洲精品aa| 日本不卡在线视频| 欧美日韩小视频| 一区二区三区四区不卡视频| 99精品视频在线观看| 国产精品美女久久福利网站| 国产福利一区二区三区视频在线 | 91亚洲男人天堂| 国产精品色哟哟网站| 国产凹凸在线观看一区二区| 欧美精品一区二区三区在线| 青青青伊人色综合久久| 日韩一区二区三区视频在线| 日本强好片久久久久久aaa| 欧美日韩国产天堂| 日韩国产欧美三级| 91精品国产欧美日韩| 蜜桃视频一区二区三区在线观看| 日韩视频一区二区| 六月丁香婷婷色狠狠久久| 日韩欧美一区在线| 麻豆传媒一区二区三区| 日韩欧美电影一二三| 国产一区二区免费在线| 国产喷白浆一区二区三区| eeuss影院一区二区三区| 亚洲视频你懂的| 欧美视频自拍偷拍| 蜜桃av一区二区三区电影| 久久综合五月天婷婷伊人| 国产美女在线精品| 中文字幕一区二区三区四区| 91国产免费观看| 奇米888四色在线精品| 久久嫩草精品久久久精品| 不卡在线观看av| 亚洲一区二区三区视频在线 | 精品国产网站在线观看| 国产一区二区在线视频| 国产精品情趣视频| 欧美日韩国产高清一区| 国产一区在线观看视频| 亚洲色图视频网站| 91精品国产91久久综合桃花| 国产成人av影院| 婷婷中文字幕一区三区| 国产亚洲精品超碰| 欧美日韩亚州综合| 国产91丝袜在线播放0| 亚洲国产成人91porn| 亚洲精品一区二区三区蜜桃下载| 99久久综合国产精品| 免费人成在线不卡| 一区在线观看视频| 日韩欧美一级精品久久| av网站免费线看精品| 日韩电影在线免费看| 国产精品污网站| 欧美一二三区在线| 色88888久久久久久影院野外| 捆绑紧缚一区二区三区视频| 亚洲欧美另类小说| 精品国产乱码久久久久久免费| 日本黄色一区二区| 成人深夜视频在线观看| 久久精品国产秦先生| 一区二区三区免费在线观看| 久久青草欧美一区二区三区| 欧美日韩一区久久| 91在线丨porny丨国产| 国产一区二区剧情av在线| 亚洲国产精品视频| 亚洲丝袜美腿综合| 国产精品沙发午睡系列990531| 欧美成人vr18sexvr| 欧美精三区欧美精三区| 色av成人天堂桃色av| 成人a免费在线看| 国产精品亚洲а∨天堂免在线| 日韩精品亚洲一区二区三区免费| 亚洲免费在线视频一区 二区| 国产欧美一区视频| 久久精品一二三| 欧美精品一区二区三区在线播放 | 另类专区欧美蜜桃臀第一页| 亚洲自拍欧美精品| 亚洲日本一区二区三区| 日韩毛片在线免费观看| 国产精品久久久久久久久久免费看| 亚洲精品一区二区在线观看| 日韩三区在线观看| 日韩一级片网站| 日韩欧美久久久| 日韩一级视频免费观看在线| 日韩欧美一级精品久久| 精品播放一区二区| 久久久不卡网国产精品一区| www一区二区| 国产亚洲欧洲一区高清在线观看| 久久一区二区视频| 久久精品亚洲一区二区三区浴池| 久久欧美一区二区| 国产精品污www在线观看| 综合久久一区二区三区| 亚洲欧美激情视频在线观看一区二区三区 | 777xxx欧美| 日韩一本二本av| 精品不卡在线视频| 中文字幕一区二区三区不卡| 亚洲免费在线观看| 午夜av一区二区| 久久成人av少妇免费| 精品伊人久久久久7777人| 国产精品综合二区| 91啦中文在线观看| 欧美日韩成人高清| xvideos.蜜桃一区二区| 亚洲天堂久久久久久久| 亚洲国产精品久久不卡毛片| 麻豆一区二区99久久久久| 国产成人精品影视| 欧美熟乱第一页| 久久久久久久久久电影| 亚洲女厕所小便bbb| 热久久免费视频| 丰满少妇久久久久久久| 欧美亚洲高清一区| 欧美精品一区二| 亚洲男人天堂一区| 美女视频免费一区| 972aa.com艺术欧美| 欧美老肥妇做.爰bbww| 久久在线免费观看| 一区二区三区国产精华| 精品亚洲aⅴ乱码一区二区三区| 不卡免费追剧大全电视剧网站| 欧美日韩精品综合在线| 欧美激情综合在线| 午夜欧美2019年伦理| 成人高清视频在线| 日韩一区二区免费在线观看| 亚洲特黄一级片| 国产精品中文字幕日韩精品| 精品视频资源站| 中文字幕永久在线不卡| 国产最新精品精品你懂的| 欧美色图激情小说| 国产精品人妖ts系列视频| 久久99精品久久久| 欧美日韩一区二区在线观看| 国产精品福利一区| 精彩视频一区二区| 欧美精品一级二级| 亚洲男人天堂av网| zzijzzij亚洲日本少妇熟睡| 精品久久久久久久一区二区蜜臀| 午夜精品福利久久久| 色视频成人在线观看免| 欧美国产激情一区二区三区蜜月| 日本特黄久久久高潮| 欧美中文字幕一区二区三区亚洲| 亚洲国产经典视频| 国产一区二三区好的| 日韩欧美高清一区| 日韩一区精品视频| 欧美午夜免费电影| 亚洲曰韩产成在线| 91丨九色丨蝌蚪丨老版| 国产精品久久久久桃色tv| 成人午夜看片网址| 欧美激情一区二区三区| 国产高清在线观看免费不卡| 国产亚洲一区二区三区四区 | 国产精品第一页第二页第三页| 国产一区二区三区免费播放| 久久理论电影网| 国产精品一区二区久久精品爱涩|