gpt4 book ai didi

java - 将 QuickAccess TextField 添加到 eclipse RCP 应用程序

转载 作者:行者123 更新时间:2023-12-01 17:50:45 25 4
gpt4 key购买 nike

我有一个使用 SWT 的 eclipse RCP 应用程序(RCP 版本 4.12.0.v20190605-1801)。我想将 eclipse QuickAccess TextField 作为搜索栏添加到我的项目中,就像在 Java eclipse IDE 中一样(也可以通过按 ctrl + 3 来使用)。

Eclipse view of QuickAccess

我已经查阅了文档,我发现的唯一内容如下:

@Override
protected void fillCoolBar(ICoolBarManager coolBar) {
// ToolBar File & Additions
IToolBarManager fileToolBar = new ToolBarManager(coolBar.getStyle());
fileToolBar.add(ActionFactory.SHOW_QUICK_ACCESS.create(window)); // window == class attribute

// Add some other stuff
}

在我的例子中,这会产生一个快速访问按钮,但不会产生文本字段。如果您单击它,它的工作方式是相同的,但我更喜欢使用 TextField,因为它对用户来说更清晰。

My QuickAccess button using org.eclipse.ui.acitons.ActionFactory

我只找到了有关如何删除 TextField 的线程,但没有找到如何添加它的线程,例如SO post here 。所以我想它一定是一个内置功能。<​​/p>

如果有人对 JCrypTool 项目感兴趣:

希望我没有错过任何重要的事情,提前感谢您的帮助。

最佳答案

我现在选择了一个稍微不同的解决方案。

我在我定义工具栏的plugin.xml 中包含了QuickAccess 条目作为扩展。现在它不再是输入文本,而是一个按钮(描绘了放大镜图标)。我采用这种方法是因为使用 RCP 扩展点实现它非常容易。

这是我的 plugin.xml 的(简化)版本看起来像现在。相关部分是扩展点org.eclipse.ui.menus调用 org.eclipse.ui.window.quickAccess

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
<extension id="application" point="org.eclipse.core.runtime.applications">
<application>
<run class="org.jcryptool.core.Application"/>
</application>
</extension>

<extension point="org.eclipse.ui.menus">
<menuContribution
allPopups="false"
locationURI="toolbar:org.jcryptool.core.searchToolbar">
<command
commandId="org.eclipse.ui.window.quickAccess"
icon="icons/searchIcon.png"
style="push">
</command>
</menuContribution>
</extension>

<extension id="product" point="org.eclipse.core.runtime.products">
<product application="org.jcryptool.core.application" name="JCrypTool">
<property name="appName" value="JCrypTool"/>
<property name="cssTheme" value="org.jcryptool.themes.default"/>
</product>
</extension>

</plugin>

看起来像这样:

enter image description here

对于一个非常奇特的实现,我想你必须为它编写一些代码。但作为相当不错的 RCP 解决方案,它对我来说没问题。

关于java - 将 QuickAccess TextField 添加到 eclipse RCP 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60798212/

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