gpt4 book ai didi

java - Eclipse中如何通过id找到添加到toolbar的控件?

转载 作者:行者123 更新时间:2023-11-29 09:19:15 25 4
gpt4 key购买 nike

我已经添加了一个控件到 eclipse,如下所示

<extension point="org.eclipse.ui.menus">
<menuContribution locationURI="toolbar:org.eclipse.ui.main.toolbar">
<toolbar id="my.toolbar">
<control
class="myplugin.debugger.toolbaritem.DebugDayMenu"
id="my.yearmenu">
</control>

我还创建了一个类 DebugDayMenu

public class DebugDayMenu extends WorkbenchWindowControlContribution{...

我现在想在另一个地方访问这个控件,但是当我尝试使用下面的代码这样做时,它会导致类转换异常

IContributionItem toolbar = coolBarManager.find("my.toolbar");
IToolBarManager toolbarManager=((ToolBarContributionItem2)toolbar).getToolBarManager();
WorkbenchWindowControlContribution dayMenu= (WorkbenchWindowControlContribution) toolbarManager.find("my.yearmenu");

dayMenu 是 DynamicToolBarContributionItem 实例而不是 WorkbenchWindowControlContribution ?此外,该控件嵌入在 DynamicToolBarContributionItem 的私有(private)字段中,没有公共(public)访问器方法

有更好的方法吗?还是我误解了什么?

最佳答案

通常,您可以在贡献的 createControl() 方法中解决此问题,方法是访问必要的信息或将自己添加为某种类型的监听器。

关于java - Eclipse中如何通过id找到添加到toolbar的控件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7434231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com