热搜
您的位置:首页 >> 网络

RCPII擴展通用工作臺補充小的改進

2019年05月30日 栏目:网络

妇科千金片功效妇科千金片哪有卖妇科千金片使用说明  1、改进原因及内容SearchView視圖的License Key按鈕不是很明顯,所
妇科千金片功效
妇科千金片哪有卖
妇科千金片使用说明

  1、改进原因及内容

  SearchView視圖的License Key按鈕不是很明顯,所以在File菜單中增加License Key菜單項,提供相同的功能

  程序没有提供打开视图的功能,在视图关闭后就无法打开了,所以增加View菜单提供打开视图的功能

  菜单的使用分两步:

  定义动作来实现具体功能

  将动作加到MenuManager中,由MenuManager来自动管理

  2、定义动作

  (1)License Key菜单项对应的动作

  package tions;

  import tion;

  import zardDialog;

  import orkbenchWindow;

  import censeKeyWizard;

  public class LicenseKeyMenuAction extends Action {

  private IWorkbenchWindow window;

  public LicenseKeyMenuAction(IWorkbenchWindow window) {

  ndow = window;

  setText("License Key...@Ctrl+K");

  }

  public void run() {

  LicenseKeyWizard wizard = new LicenseKeyWizard();

  WizardDialog dialog = new WizardDialog(tShell(), wizard);

  en();

  }

  }

  普通动作需要扩展Action类(实现Iaction接口的缺省基类),并且重写run方法来实现动作要完成的特定功能

  动作类通常在其构造方法中进行一些属性的初始化工作,如setText方法设置动作相关的文本,在菜单中表现为菜单项文本

  动作类在其构造方法中做的另一件事是保存Window级(如IWorkbenchWindow)的引用,以便在后面的run方法中使用

  run方法实现了与SearchView视图相同的功能:打开向导窗口

  (2)显示视图的动作

  package tions;

  import tion;

  import orkbenchPage;

  import orkbenchWindow;

  import rtInitException;

  public class ViewAction extends Action {

  private IWorkbenchWindow window;

  private String viewId;

  public ViewAction(IWorkbenchWindow window, String viewId) {

  ndow = window;

  ewId = viewId;

  setText("Show " + bstring(stIndexOf(".") + 1));

  }

  public void run() {

  IWorkbenchPage[] pages = tPages();

  for (int i = 0, len = ngth; i len; i++) {

  try {

  pages[i].showView(viewId);

  break;

  } catch (PartInitException piex) {

  continue;

  }

  }

  }

  }

  ViewAction类的实现方法和LicenseKeyMenuAction类是一样的,不同的是构造方法中多了viewId参数,用来接收视图Id

  菜单项是根据视图Id生成的(不是很妥)

  在run方法中,先获得WorkbenchWindow中的WorkbenchPage,然后调用WorkbenchPage的showView方法显示对应视图Id的视图(感觉for循环写得不是很好,但暂时没有想到别的方法)

  3、将动作加到MenuManager中

  修改GoogleWorkbenchAdvisor类的fillActionBars方法,将动作加到MenuManager中

  public void fillActionBars(IWorkbenchWindow window,

  IActionBarConfigurer configurer, int flags) {

  IMenuManager menuBar = tMenuManager();

  MenuManager fileMenu = new MenuManager("File",

  IWorkbenchActionConstants.M_FILE);

  d(new GroupMarker(LE_START));

  d(new GroupMarker(_ADDITIONS));

  d(new LicenseKeyMenuAction(window));

  d(eate(window));

  d(new GroupMarker(LE_END));

  d(fileMenu);

  MenuManager viewMenu = new MenuManager("View");

  d(new ViewAction(window, ));

  d(new ViewAction(window, ));

  d(viewMenu);

  }

  查看本文来源

脸胖怎么瘦 面部吸脂手术多久可以恢复
市执法支队召开渔业船舶安全监管工作会议
番禺渔政大队购置电瓶车加强渔港巡查工作
  • 友情链接
  • 合作媒体