首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

14.3  响应鼠标双击事件

如何让TableViewer的每一行响应鼠标的双击或单击事件呢?又如何取得被选择中的记录数据呢?本节将解决这个问题。本节实例的效果如图14.5所示,双击表格中的某条记录时弹出一个提示框,框中的文字信息显示该记录的人名。

图14.5  鼠标响应的效果图

本节实例在14.2节的代码基础上修改完成(完整代码见配书光盘的TableViewer2.java文件),具体如下。

在tv.setInput(data)一句之后,添加一个自定义方法addListener(tv),在此方法中给TableViewer添加监听器。addListener方法的代码如下:

private void addListener(TableViewer tv) {

         // 鼠标双击事件监听

         tv.addDoubleClickListener(new IDoubleClickListener() {

                   public void doubleClick(DoubleClickEvent event) {

                            //得到表格的选择对象,里面封装了表格中被选择的记录信息

                            IStructuredSelection selection = (IStructuredSelection) event.getSelection();

                            // 得到所选择的第一条实体对象(表格可以有多选),并进行类型转换

                            PeopleEntity o = (PeopleEntity) selection.getFirstElement();

                            // 弹出一个提示框

                            MessageDialog.openInformation(null, "提示", o.getName());

                   }

         });

         // 选择事件(单击)监听

         tv.addSelectionChangedListener(new ISelectionChangedListener() {

                   public void selectionChanged(SelectionChangedEvent event) {

                   // 事件处理代码……(略)

                   }

         });

}

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论