社区
Eclipse
帖子详情
eclipse插件开发Properties视图实现ComboBoxCellEditor
忘了隐藏
2009-11-05 04:58:17
现在在eclipse 插件的Properties视图中使用ComboBoxCellEditor,如何实现下面的功能
1.当有键盘输入时实现下拉框即时弹出;
2.并且下拉框中的内容会和输入的内容相匹配,类似一些网站实现的功能。
...全文
255
4
打赏
收藏
eclipse插件开发Properties视图实现ComboBoxCellEditor
现在在eclipse 插件的Properties视图中使用ComboBoxCellEditor,如何实现下面的功能 1.当有键盘输入时实现下拉框即时弹出; 2.并且下拉框中的内容会和输入的内容相匹配,类似一些网站实现的功能。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
霜之哀伤
2009-11-06
打赏
举报
回复
可以研究下这个:Content proposals,就是类似Java编辑器里的自动提示。
在Eclipse自带的帮助里:
Platform Plug-in Developer Guide > Programmer's Guide > JFace UI framework > Field Assist > Content proposals
swandragon
2009-11-06
打赏
举报
回复
没做过插件开发
监听键盘事件,有输入时就弹出一个下拉框
输入的内容与文本内容比较,把相似的取出来显示在下拉框中
用js做过类似的功能
忘了隐藏
2009-11-06
打赏
举报
回复
以下方法直接copy到eclipse在导入相应包就可运行,当按CTRL+/或者输入new char[] { '#', '(' }中的'#'和'('顺利呼出弹出框
import org.eclipse.jface.bindings.keys.KeyStroke;
import org.eclipse.jface.bindings.keys.ParseException;
import org.eclipse.jface.fieldassist.ContentProposalAdapter;
import org.eclipse.jface.fieldassist.IContentProposalProvider;
import org.eclipse.jface.fieldassist.SimpleContentProposalProvider;
public static void main(String[] args){
Display display = new Display();
Shell sShell = new Shell(display);
sShell.setText("Shell");
GridLayout gridLayout = new GridLayout(1, false);
sShell.setLayout(gridLayout);
sShell.setSize(new Point(300, 200));
KeyStroke keyStroke;
final Text t = new Text(sShell, SWT.BORDER | SWT.MULTI);
t.setLayoutData(new GridData(GridData.FILL_BOTH));
// final Combo t = new Combo(sShell,0);
// t.setItems(new String[]{"abc","bcd","cde"});
char[] autoActivationCharacters = new char[] { '#', '(' };
try {
keyStroke = KeyStroke.getInstance("Alt+/");
ContentProposalAdapter adapter = new ContentProposalAdapter(t,
new TextContentAdapter(), new SimpleContentProposalProvider(
new String[] { "建议1", "建议2", "建议3" }),keyStroke,
autoActivationCharacters);
} catch (ParseException e1) {
e1.printStackTrace();
}
sShell.open();
while (!sShell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
但是在eclipse插件中利用这个类ContentAssistFieldCellEditor google搜一下第一个就是,它基于ContentProposalAdapter,new ContentAssistFieldCellEditor(
parent,
new char[] { '#', '(', 'a' },
new SimpleContentProposalProvider(new String[]{"a","b","c"})
在Properties视图中怎么也呼不出弹出框,弄了两天没进展 郁闷
GreenVesture
2009-11-05
打赏
举报
回复
这个直接用Combo很难实现,其实你看下Combo的代码,它是由一个Text,一个List和一个Button组合而成的,只不过它已经把功能封装好了...那么我觉得你可以自己用一个Text和一个List来实现你需要的功能,Text用来供用户输入(在Text上监听键盘输入),而List用于显示匹配内容,就像eclipse里面的content assist一样.....呵呵,仅仅提供个思路
maven3.2.2
eclipse
插件
离线包
Eclipse
是一款广泛使用的Java集成
开发
环境,而Maven的
Eclipse
插件
则将Maven的功能无缝集成到
Eclipse
中,使得
开发
者在IDE内部就可以进行Maven相关的操作,如编译、测试、打包等。 "Maven 3.2.2"是Maven的一个稳定...
Eclipse
SVN
插件
(svn-site-1.6.17)
Eclipse
SVN
插件
是
开发
人员在
Eclipse
集成
开发
环境中管理版本控制的重要工具,它使得
开发
者能够无缝地与Subversion(SVN)服务器进行交互。在本文中,我们将深入探讨
Eclipse
SVN
插件
(svn-site-1.6.17)及其相关组件...
eclipse
黑色主题
插件
绿色版
Eclipse
是一款广泛使用的开源集成
开发
环境(IDE),它支持多种编程语言,如Java、C++、Python等。在长时间的编码工作中,一个舒适的主题能够帮助程序员减轻视觉疲劳,提高工作效率。"
eclipse
黑色主题
插件
绿色版...
Hadoop2.X
Eclipse
插件
Eclipse
的Hadoop2.x
插件
。本人在Hadoop2.2.0上亲测可用。
python for
eclipse
Python for
Eclipse
是一款强大的集成
开发
环境(IDE)
插件
,它为
Eclipse
这个广泛使用的Java IDE提供了对Python语言的全面支持。这款
插件
让
开发
者能够在
Eclipse
的舒适环境中编写、调试和运行Python代码,大大提升了...
Eclipse
58,446
社区成员
49,460
社区内容
发帖
与我相关
我的任务
Eclipse
Java Eclipse
复制链接
扫一扫
分享
社区描述
Java Eclipse
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章