本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

如何在 eclipse RCP 中显示视图时显示上下文帮助

发布于2025-01-07 22:02     阅读(146)     评论(0)     点赞(25)     收藏(4)


我在 eclipse RCP 应用程序中创建了自己的工具。当工具被激活时,会打开特定视图,当我按下 F1 按钮时,我想显示动态帮助。

我设置了我的 context.xml 并且在我的视图createPartControl函数中有这一行:

    PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, "lineer.udig.tools.yoltool.bufferView.myId"); 

“lineer.udig.tools.yoltool.bufferView”是我的视图ID,“myId”是我在context.xml中的context-id <context id="myId">

当我选择我的工具时,视图正在打开,并且当我单击此视图上的任何文本框并按下时F1,动态帮助就会起作用。

但是,我想在此视图的任何位置显示此帮助,而无需单击文本框或组合框。


解决方案


函数 createPartControl 采用“Composite parent”参数

public void createPartControl(Composite parent) {
     ..
     ..
}

因此,如果我们将复合变量设为私有变量,private Composite parent;那么在函数中

public void createPartControl(Composite parent) {
     ..
     this.parent = parent;
}

在课程的最后,我们需要将这两行添加到 setFocus() 函数中。

    public void setFocus() {
        // TODO Auto-generated method stub
           if(parent != null) // NEW
               parent.setFocus(); // NEW

    }

所以经过这些修改后,当视图被激活时,我们的动态帮助就会自动起作用。



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.javaheidong.com/blog/article/694776/8cc6f327139c7dbb86d7/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

25 0
收藏该文
已收藏

评论内容:(最多支持255个字符)