在http://grid-qian.iteye.com/blog/123003看到一篇文章,感觉不错.记录如下:
在ECLIPSE中开发JAVA程序,当我们打开一个JAVA类时,ECLIPSE会打开一个JDT的JAVA EDITOR来显示这个类.当把鼠标移到某一个JAVA类型时,会出现一个tooltip的提示信息.这时我们可以按F2来把焦点设定在这个提示信息窗口上,这样就不会因为一移动鼠标这个提示窗口就消失了.
tooltip大家都会加,但怎么把F2这个功能也加上去呢?
其实很容易,下面我用简单的代码介绍一下:
比如说我们要在Table上加上tooltip,当鼠标移到某一行时,显示该行的提示信息.
我们可以这么做:
TableViewer viewer
Table table = viewer.getTable();
TooltipListener tooltipListener = new TooltipListener(viewer);
table.addListener(SWT.KeyDown,tooltipListener);
table.addListener(SWT.MouseHover,tooltipListener);
这里的TooltipListener类就是一个监听器,来监听系统的两个事件:一个是键盘敲下,一个是鼠标停留.
private class TooltipListener implements Listener {
private Shell tipshell;
private Text msg;
private TableViewer viewer;
private Shell shell;
private Display display;
public TooltipListener(TableViewer viewer) {
this.viewer = viewer;
shell = this.viewer .getControl().getShell();
display = shell.getDisplay();
}
public void handleEvent(Event event) {
if(event.type == SWT.KeyDown){
if(event.keyCode == SWT.F2){
tipshell.forceFocus();
tooltiptext.setFacus();
}
}else if(event.type == SWT.MouseHover){
TableItem item = viewer.getTable().getItem(new Point(event.x, event.y));
tipShell = new Shell(shell, SWT.ON_TOP | SWT.TOOL);
tipShell.setLayout(new FillLayout());
msg = new Text(tipShell, SWT.WRAP);
msg.setForeground(display.getSystemColor(SWT.COLOR_INFO_FOREGROUND));
msg.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));
msg.setText("hello!nihao");
tipShell.setVisible(true);
}
}
break;
}
}
当鼠标停留,这个监听器监听到了停留事件就打开一个tooltip:hello!nihao 这时如果按下F2,这个监听器就监听到,马上把鼠标焦点定位到tooltip上.
^_^,就这么简单!其实就是两个语句:tipshell.forceFocus();tooltiptext.setFacus();
希望对大家有帮助.
分享到:
相关推荐
(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。 F5单步调试进入函数内部。 F6单步调试不进入函数内部,如果装了金山...
(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。 F5单步调试进入函数内部。 F6单步调试不进入函数内部,如果装了金山词霸...
(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。 F5单步调试进入函数内部。 F6单步调试不进入函数内部,如果装了金山词霸...
(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。 F5单步调试进入函数内部。 F6单步调试不进入函数内部,如果装了金山...
weex 可以在获取到的组件引用 ref 上使用 addEvent api 监听事件,而 f2 传过来的 source 是经过 GCanvas 和 f2 加工过的 canvas 对象,然而现在也只能支持 f2 tooltip 插件的手势,Interaction 和 Legend 上不支持,...
(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。 F5单步调试进入函数内部。 F6单步调试不进入函数内部,如果装了金山词霸...
(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。 F5单步调试进入函数内部。 F6单步调试不进入函数内部,如果装了金山词霸...
(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。 F5单步调试进入函数内部。 F6单步调试不进入函数内部,如果装了金山词霸...
(1)Ctrl+M --切换窗口的大小 (2)Ctrl+Q --跳到最后一次的编辑处 (3)F2 --当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。
MyEclipse 全部快捷键 (1)Ctrl+M切换窗口的大小 (2)Ctrl+Q跳到最后一次的编辑处 (3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。......
(1)Ctrl+M切换窗口的大小 (2)Ctrl+Q跳到最后一次的编辑处 (3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。
MyEclipse 快捷键大全,很详细.MyEclipse 快捷键大全 MyEclipse 快捷键大全 (1)Ctrl+M切换窗口的大小 ...(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。
Eclipse快捷键 (1)Ctrl+M切换窗口的大小 ...(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。 F5单步调试进入函数内部。
(3)F2当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。 F5单步调试进入函数内部。 F6单步调试不进入函数内部,如果装了金山词霸...
F2当鼠标放在一个标记处出现Tooltip时候,按F2则把鼠标 移开时Tooltip还会显示即Show Tooltip Description。 F3跳到声明或定义的地方。 F5单步调试进入函数内部。 F6单步调试不进入函数内部,如果装了金山词霸...
Keyboard shortcuts A quick reference guide to UltraEdit's default keyboard shortcuts Keymapping and custom hotkeys How to customize 键映射s and menu hotkeys Column Markers The benefit of a column ...
o New Option: Copy Remote IP Address (F2). * Version 1.31: o Fixed bug: TCP and UDP ports with the same number and in the same process merged into one item. * Version 1.30: o New column: Added ...