快速业务通道

Eclipse 3.0简介和插件开发示例 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23
] mc =new MailConfig [] { mail }; MailDialog md=new MailDialog(mc); System.err.println("run run run ") ; md.setSize(400, 335); md.show();

以上的代码编译不会通过,但是别着急,慢慢来,很快了。

Eclipse 3.0简介和插件开发示例(5)

时间:2010-12-05

3.2构建邮件监控对话框

当然你需要建立一个MailConfig类用来表示一个邮箱的具体设置已及相关信息,这里就不在累述说明,详情参见参考资料中的代码。需要说明的式MailConfig除了要记录一个邮箱的地址,用户名和密码外,还提供2个关键字数组,如果为空,不加过滤,如果关键字有值,系统会根据发件人和邮件标题中是否包含关键字来进行显示邮件信息,已保证你的绝对自由。

首先我们需要实现一个MailConfig类,表示邮件配置,每个MailConfig的对象代表一个邮件帐户,我们的系统将能显示多个邮箱的配置,每个MailConfig中使用一个数组来保存需要过滤的收件人和邮件地址。

MailConfig类的中的变量如下:

String popServer; String popUser; String popPassword; //设置需要过滤的关键字:发件人和邮件主题 String [] strFrom; String [] strSubject; //是否显示邮件内容 boolean isViewContent=false;

同样,我们将使用一个对话框来显示邮件信息,MailDialog需要引用javaMail.jar,和activation.jar这两个类包,确保已经有这两个类包并加入到项目的类路径中。最后的MailDialog代码如下:

package myplugin; import java.io.IOException; import java.util.Properties; import javax.mail.Folder; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Session; import javax.mail.Store; import javax.mail.internet.InternetAddress; import javax.swing.JDialog; import javax.swing.JEditorPane; import javax.swing.JTextPane; /** * @author zhaoyong * * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Style - Code Templates */ public class MailDialog extends JDialog { private JEditorPane jEditorPane = null; private JTextPane jTextPane = null; //可以显示多个邮件配置 MailConfig[] mc= null; /** * This method initializes * 构造函数 * @param mc : 需要显示的多个邮箱配置对象。 */ public MailDialog(MailConfig[] mc) { super(); if(mc!=null) this.mc = mc; else System.err.println("邮件配置错误!") ; initialize(); } /** * This method initializes this * 初始化 * @return void */ private void initialize() { try { //设定显示内容的面板 this.setContentPane(getJTextPane()); //取得所有的新邮件信息 String s= getAllMailInfo(); //将信息显示在对话框中 this.jTextPane .setText(s); this.setTitle("邮件信息"); this.setSize(251, 100); } catch (Exception e) { //发生错误显示错误信息 this.jTextPane .setText(e.toString()); e.printStackTrace(); } } /**取得所有的邮箱的需要监控的邮件信息 * * @return String */ private String getAllMailInfo() { String allMailInfo=""; if (mc.length <1) allMailInfo="没有配置邮箱!"; else { for(int i=0;i<mc.length;i++) { //循环获取每个邮箱的邮件信息 allMailInfo=allMailInfo+getMailInfo(mc[i]); } } //还没有收到相关的邮件 if (allMailInfo.trim().length() ==0) allMailInfo="未检测到相关新邮件!"; return allMailInfo; } /* *得到一个邮箱中满足条件的所有新邮件的字符串形式 **/ private

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号