GWT树的工具提示:将节点添加到节点 [英] Tooltips for GWT tree: adding mouseovers to nodes

查看:95
本文介绍了GWT树的工具提示:将节点添加到节点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图为GWT中树的节点添加工具提示。因此,我想为树的节点添加一个mouseover监听器,而不是树本身。

Treelistener界面似乎是我想要的,但现在已弃用代替处理程序系统。我不太了解如何在单元格上获得鼠标悬停行为,因为我似乎只能将MouseOverHandler添加到树本身。



任何帮助将不胜感激,谢谢。

解决方案

一个TreeItem可以包含一个Widget对象。因此,在一个小部件(即标签)上添加一个MouseOverHandler和一个MouseOutHandler,并将该小部件放入TreeItem中添加:

 标签myItemContent =新标签(我的内容); 
myItemContent.addMouseOverHandler(new MouseOverHandler(){
$ b $ public void onMouseOver(MouseOverEvent event){
//构造和/或打开您的工具提示
}
});

myItemContent.addMouseOutHandler(new MouseOutHandler(){

public void onMouseOut(MouseOutEvent event){
//关闭您的工具提示

}
});
//将您的Label放入TreeItem中
TreeItem myItem = new TreeItem(myItemContent);
//假设parentNode是一个ItemTree
parentNode.addItem(myItem);

另一个解决方案是使用GwtQuery。 GwtQuery允许将事件处理程序绑定到任何DOM元素:

  import static com.google.gwt.query.client.GQuery。$ ; 

...

TreeItem myItem = new TreeItem(My content);
$(myItem.getElement())。hover(new Function(){

//在鼠标上调用的方法超过
public void f(Element e){
//构造和/或打开你的工具提示
}

},new Function(){

//在鼠标上调用的方法
public void f(Element e){
//关闭您的工具提示
}
});

parentNode.addItem(myItem);

Julien


I'm trying to add tooltips for the nodes of a Tree in GWT. As such, I'd like to add a mouseover listener for the nodes of a tree rather than on the tree itself.

The Treelistener interface seems to be what I want but this is now deprecated in lieu of the handler system. I don't quite understand how to get mouseover behaviour on the cell as I only seem to be able to add a MouseOverHandler to the tree itself.

Any help would be appreciated, thank you.

解决方案

A TreeItem can contains a Widget object. So add a MouseOverHandler and a MouseOutHandler on a widget (i.e. a Label) and put the widget inside the TreeItem to add :

Label myItemContent = new Label("My content");
myItemContent.addMouseOverHandler(new MouseOverHandler() {

  public void onMouseOver(MouseOverEvent event) {
    // construct and/or open your tooltip
  }
});

myItemContent.addMouseOutHandler(new MouseOutHandler() {

  public void onMouseOut(MouseOutEvent event) {
    // close your tooltip

  }
});
//put your Label inside a TreeItem
TreeItem myItem = new TreeItem(myItemContent);
// let's assume that parentNode is an ItemTree
parentNode.addItem(myItem);

An other solution can be to use GwtQuery. GwtQuery allows to bind event handler to any DOM element :

import static com.google.gwt.query.client.GQuery.$;

...

TreeItem myItem = new TreeItem("My content");
$(myItem.getElement()).hover(new Function() {

  //method called on mouse over
  public void f(Element e) {
      // construct and/or open your tooltip
  }

}, new Function() {

  //method called on mouse out
  public void f(Element e) {
      //close your tooltip
  }
});

parentNode.addItem(myItem);

Julien

这篇关于GWT树的工具提示:将节点添加到节点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆