观看记录
  • 我的观影记录
登录
测试首页rcp视图之间使用监听传递参数

rcp视图之间使用监听传递参数

在rcp插件之中视图间的信息怎么传递到其他视图中的呢?在打开视图的方式中也没有参数机关方式,插件中利用监听来传递参数。我写的经验对你进修java有帮忙的话,给我投票、点赞或者保藏!

1eclipse中表格(table)隔行变色

1eclipse中怎么利用自界说Dialog窗口

1mysql数据库怎么利用游标

工具/原料

  • eclipse

方式/步骤

  1. 1

    新建一个插件项目,项目标名称为jianting.

  2. 2

    在项目中新建2个视图view1,view2,打开Perspective.java这个文件,把视图打开。

    IFolderLayout left=layout.createFolder("left", IPageLayout.LEFT, 0.5f, IPageLayout.ID_EDITOR_AREA);

    left.addView(view1.ID);

    IFolderLayout bottom=layout.createFolder("bottom", IPageLayout.BOTTOM, 0.5f, IPageLayout.ID_EDITOR_AREA);

    bottom.addView(view2.ID);

  3. 3

    在view1视图中成立一个发送类:

    public class fasong implements ISelectionProvider{

    List<ISelectionChangedListener> listeners = new ArrayList<ISelectionChangedListener>();

    ISelection theselection = StructuredSelection.EMPTY;

    @Override

    public void addSelectionChangedListener(ISelectionChangedListener listener) {

    listeners.add(listener);

    }

    @Override

    public ISelection getSelection() {

    return theselection;

    }

    @Override

    public void removeSelectionChangedListener(ISelectionChangedListener listener) {

    listeners.remove(listener);

    }

    @Override

    public void setSelection(ISelection selection) {

    if(selection==null){

    return;

    }

    theselection = selection;

    final SelectionChangedEvent e = new SelectionChangedEvent(this, selection);

    Object[] listenersArray = listeners.toArray();

    for (int i = 0; i < listenersArray.length; i++) {

    final ISelectionChangedListener l = (ISelectionChangedListener) listenersArray[0];

                     l.selectionChanged(e);

    }

    }

    }

  4. 4

    在view1视图初始化时,把发送类注册到视图中:

    fasong fa=new fasong();

    this.getSite().setSelectionProvider(fa);

  5. 5

    编纂text key的事务,当有键按下时,把获得文本发送出去。

    ISelection st=new StructuredSelection(((Text)e.getSource()).getText());

    fa.setSelection(st);

  6. 6

    在view2视图中写监听类,把监听的字符串显示在text中。

    public class jieshou implements  ISelectionListener{

    @Override

    public void selectionChanged(IWorkbenchPart part, ISelection selection) {

    if(selection!=null ){

    IStructuredSelection st = (IStructuredSelection)selection;

    text.setText((String) st.getFirstElement());

    }

    }

    }

  7. 7

    在view2初始化时,增添监听类:

    jieshou jie=new jieshou();

    this.getViewSite().getWorkbenchWindow().getSelectionService().addSelectionListener(jie);

  8. 8

    项目运行,在view1中输入字符串,同时view2视图的text框内一样显示。

“rcp视图之间使用监听传递参数”关联的文章

  • 电脑网络异常

    进入电脑界面后,需要打开设置图标,进入后点击网格和Internet选项中心进行操作,以下是详细步骤操作:

    1小时前0阅读

    电脑网络异常
  • 美团电动车怎么还车

    美团电动车怎么还车?下面给大家详细介绍一下具体步骤及说明。

    1小时前0阅读

    美团电动车怎么还车
  • 腾讯新闻怎么关闭视频自动播放
  • 快速除痱子

    夏天到了,人们身上容易长痱子,有什么办法可以轻松除掉痱子吗,今天小编找到了几种方法,希望能帮到你。

    1小时前0阅读

  • 华为手机畅享7,怎样设置指纹锁
  • 做深蹲运动有什么好处

    做深蹲运动有什么好处呢?很多人都不知道,下面小编来告诉大家。

    1小时前0阅读

  • 果酱烤棉花糖的制作方法

    棉花糖的香甜美味与果酱的清新可口会撞出怎样的味道呢?今天小编就来介绍一下果酱烤棉花糖的制作方法。

    1小时前0阅读

  • 原神机关烹饪之法之二怎么过关

    原神机关烹饪之法之二怎么过关?韶光抚月第二阶段活动有些玩家已经顺利完成了,这里给大家带来了原神机关烹饪之法之二玩法技巧,一起来看下文中介绍吧。

    2小时前0阅读

    原神机关烹饪之法之二怎么过关
  • 如何让idm不要自动下载视频

    用浏览器打开带有视频的网页,便会自动下载此页面的所有视频。如何禁止IDM自动下载视频呢?请看下面的经验。

    2小时前0阅读

    如何让idm不要自动下载视频
  • 手机用什么浏览器好?

    网络时代的到来,丰富了我们的生活,出现了越来越多的浏览器,你用的哪一款浏览器?你知道哪一款浏览器最好用吗?下面我们就一起来看看吧。

    2小时前0阅读

切换深色外观
留言
视频编辑修改
回到顶部
首页
手机数码
医疗健康
金融管理
社交情感
无名