网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.JDB 的简单使用.
.等级结构数据集在Aspire和Tomcat.
.Java开发技术十年的回顾与展望.
.Java 程序中的多线程.
.利用HttpSessionListener统计在线.
.JBuilderX初体验.
.Javascript实例教程(12) 鼠标移过.
.Spring Framework的公司理念.
.在.NET上安装XBike以及操作方法.
.Flex1.5以及flex Builder 1.5安装.
.改写equals的时候遵守约定.
.Lazy Singleton的Java实现.
.配置InternetInformationService.
.Java入门笔记8_JavaTools.
.安装Struts需要的软件.
.Java IO学习基础之读写文本.
.Spring技巧之简洁配置.
.Java实用工具.
.关于游戏中高效的换色方法.
.Eclipse3.1M2部分支持JDK5语法.

关于Eclipse工作台中的Preference

发表日期:2008-1-5



  Eclipse平台支持preference,preference伴随着工作空间出现。这篇文章将讨论preference的数据存储类型,并讲述怎样开发和注册用户接口使用户设置preference更加方便,同时还告诉你怎样利用导入和导出功能存储不依靠于工作台的preference。它同时也告诉你当其它的插件要使用你的插件的preference时候怎样初始化和得到preference。这个功能将在下面的例子中进行演示,这个例子是在文件中查找错误的单词。我们将在这个工具中用2个preference页设置我们的preference,其中一个是设置高量显示的颜色`,这个页面比较简单,另外一个稍微复杂点,是设置单词的列表。
  
  何时使用Preference
  
  Preference是一种数据,它存在于工作空间中,答应用户存储插件的状态,以保证它在Eclipse中的一致性。Eclipse 2.0提供2种preference,用户接口(UI)preference(同样存在于1.0中)和核心preference。这篇文章仅仅涉及到怎样使用UI preference存储。典型的UI preference有新的实例的默认值,编辑器的颜色,路径等等。核心preference用于不是UI的部分的值。
  
  Preference并不涉及到当前工作空间中的任何资源,相反,它应该被编辑器,视图或者其它的操作资源的对象所使用。一种资源实例对应的数据最好存储成一个属性。
  
  Preference对任何插件来说都是可用的,当然,先决条件是存在插件。通常的方法是你的插件上提供API,答应preference可以被访问。Preference的值存储在工作空间的.metadata/.plugins目录下面。下面我们举例怎么做。
  
  Preference Store和插件
  
  每个插件都有自己的preference store,这是工作空间提供的。在这个例子中,我们将定义一个插件,使用它的preference store存储preference。在UI中当要使用插件的时候我们定义AbustractUIPlugin的子类。构造函数(参见 )将在工作台中创建一个独立的答应轻易访问的插件实例。我们实现方法initializeDefaultPreferences()为preference设置默认值。首先为错误的单词定义了一个preference,另外一个是定义高量显示的颜色。每个preference的值与给定的要害字相对应。在下面的代码中使用的要害字是在中定义的常量。
  
  所有的preference应该都有默认值来保证在任何时候都有值。默认值也保证了UI能够提供一种方式重置preference的值回到初始设定,这是通过“保存默认按钮”实现的。Preference的默认值在插件中也应该进行初始化,以便它在任何UI创建之前设置。
  
  IabstractWorkbenchPlugin定义了一个方法,当preference第一次创建的时候,它会被调用。这个方法就是initializeDefaultPreferences(IPreferenceStore)。在这个方法中(参见)你应该把所有的值都设为默认值,才能够使用preference store。我们在PreferenceConverter中用helper方法设定默认的color,PreferenceConverter答应插件开发者设置和得到一些常见的存储类型的preference的值,例如FontData,Point等等。提供API是因为preference无论是存储还是读取都是String,以一种我们人可以理解的格式。这样来平衡Java的属性机制。我们那个稍微复杂的错误单词的preference在初始化的时候使用了预先设定的值。在PreferenceConvertor中并没有提供API来存储和读取String数组。
  
  Color color= Display.getDefault().getSystemColor(SWT.COLOR_BLUE);PreferenceConverter.setDefault
  (store, HIGHLIGHT_PREFERENCE,
  color.getRGB());
  public class BadWordCheckerPlugin extends AbstractUIPlugin
  {
  //The shared instance.
  private static BadWordCheckerPlugin plugin;
  //The identifiers for the preferences
  public static final String BAD_WORDS_PREFERENCE = "badwords";
  public static final String HIGHLIGHT_PREFERENCE = "highlight";
  //The default values for the preferences
  public static final String DEFAULT_BAD_WORDS = "bug;bogus;hack;";
  public static final int DEFAULT_HIGHLIGHT = SWT.COLOR_BLUE;
  public BadWordCheckerPlugin(IPluginDescriptor descriptor)
  {
  super(descriptor);
  plugin = this;
  }
  public static BadWordCheckerPlugin getDefault()
  {
  return plugin;  }
  /**   * Initializes a preference store with default preference values
  * for this plug-in.
  */  protected void initializeDefaultPreferences(IPreferenceStore store)
  {
  store.setDefault(BAD_WORDS_PREFERENCE, DEFAULT_BAD_WORDS);
  Color color= Display.getDefault().getSystemColor(DEFAULT_HIGHLIGHT);
  PreferenceConverter.setDefault(store, HIGHLIGHT_PREFERENCE, color.getRGB());
  }
  }
上一篇:在Eclipse中扩展RefactoringWizard 框架 人气:517
下一篇:关于Eclipse插件开发之定制向导(图) 人气:680
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐