posts - 28, comments - 27, trackbacks - 0, articles - 0
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理
默认情况下,SWT的Table只会给整个Table设置Tooltip,要对每一个TableItem设置Tooltip的话,就要监听鼠标事件了:


        table.addMouseTrackListener(
new MouseTrackAdapter() {
            
public void mouseHover(MouseEvent event) {
                Point pt 
= new Point(event.x, event.y);
                
int index = table.getTopIndex();
                
while (index < table.getItemCount()) {
                    TableItem item 
= table.getItem(index);
                    
for (int i = 0; i < table.getColumnCount(); i++) {
                        Rectangle rect 
= item.getBounds(i);
                        
if (rect.contains(pt)) {
                            Object object
= item.getData();
                            ........
                        }
                    }
                    index
++;
                }
            }
        });

在省略号的地方就可以对对象进行转型了

评论

# re: 使SWT的Table根据TableItem显示Tooltip  回复  更多评论   

2006-12-11 19:28 by BeanSoft
呵呵,貌似显示 Tooltip 的代码还没加上吧.. 不熟 SWT, 随便说说

# re: 使SWT的Table根据TableItem显示Tooltip  回复  更多评论   

2006-12-11 21:20 by Robin's Java World
我也不熟,不過我同意樓上的說法。

# re: 使SWT的Table根据TableItem显示Tooltip  回复  更多评论   

2006-12-13 18:37 by 小小凉粉
呵呵,因为加Tooltip太简单了

重点是要监听到鼠标移到哪一个Item上,并且捕捉到Item所对应的对象

# re: 使SWT的Table根据TableItem显示Tooltip  回复  更多评论   

2006-12-13 18:58 by BeanSoft
嗯,大概加个 setToolTip 类似的函数就可以搞定了..

只有注册用户登录后才能发表评论。


网站导航: