热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SWT表格

表格在表格中显示所有信息,包括在表格中显示照片的操作***将书籍信息显示在表格中*@paramlist*privatevoidshowTable(List
表格

《SWT--表格》
《SWT--表格》

在表格中显示所有信息,包括在表格中显示照片的操作

/** * 将书籍信息显示在表格中 * @param list */
private void showTable(List<Map<String,Object>> list){
TableItem item = null;
//清空表格中原有数据
table.removeAll();
if(list==null||list.isEmpty()){
MessageDialog.openConfirm(shell, "提示", "查无书籍信息");
}

for(Map<String,Object> m :list){
item = new TableItem(table, SWT.NONE);
item.setText(new String[]{
//全都转成字符串
String.valueOf(m.get("ISBN")),
String.valueOf(m.get("B_NAME")),
String.valueOf(m.get("T_NAME")),
String.valueOf(m.get("B_AUTHOR")),
String.valueOf(m.get("B_COMPANY")),
String.valueOf(m.get("B_DATE")),
String.valueOf(m.get("B_PRICE")),
});
//图片在表格中显示
TableEditor editor = new TableEditor(table);
editor.horizontalAlignment = SWT.LEFT;
editor.grabHorizontal = true;
editor.minimumWidth = 50;
editor.minimumHeight = 50;
Image image = null;
if(null==m.get("B_IAMGE")){
image = SWTResourceManager.getImage(Dialog_Book_Update.class,"/image/zanwu.png");
}else{
byte []bt = (byte[]) m.get("B_IAMGE");
ByteArrayInputStream in = new ByteArrayInputStream(bt);
image = new Image(Display.getCurrent(), in);
}
item.setImage(7,YcUtil.resize(image, 50, 50));
//编辑器重新加载item
editor.setItem(item);
}
}

/** * 指定高度和宽度对图片自适应 * @param src 原图片 * @param width 目标图片宽度 * @param height 目标图片高度 * @return */
public static Image resize(Image src,int width,int height){
Image image = new Image(Display.getDefault(), width,height);
GC gc = new GC(image);
try{
//打开高级绘图模式
gc.setAdvanced(true);
//设置消除锯齿
gc.setAntialias(SWT.ON);
gc.setInterpolation(SWT.HIGH);
gc.drawImage(src, 0, 0,src.getBounds().width,src.getBounds().height,0,0,width,height);
}finally{
gc.dispose();
}
return image;
}

点击表格中某一行后,在对应文本框显示

在table添加点击事件

table.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
TableItem item= (TableItem) e.item;
text_isbn1.setText(item.getText(0));
text_name1.setText(item.getText(1));
text_author1.setText(item.getText(3));
text_company1.setText(item.getText(4));
text_date1.setText(item.getText(5));
text_price1.setText(item.getText(6));
Image image = item.getImage(7);
YcUtil.imageSize(label_image);
}
});

推荐阅读
  • 本文基于Java官方文档进行了适当修改,旨在介绍如何实现一个能够同时处理多个客户端请求的服务端程序。在前文中,我们探讨了单客户端访问的服务端实现,而本篇将深入讲解多客户端环境下的服务端设计与实现。 ... [详细]
  • 本文详细介绍了如何使用C#实现不同类型的系统服务账户(如Windows服务、计划任务和IIS应用池)的密码重置方法。 ... [详细]
  • 1、编写一个Java程序在屏幕上输出“你好!”。programmenameHelloworld.javapublicclassHelloworld{publicst ... [详细]
  • 在Android中实现黑客帝国风格的数字雨效果
    本文将详细介绍如何在Android平台上利用自定义View实现类似《黑客帝国》中的数字雨效果。通过实例代码,我们将探讨如何设置文字颜色、大小,以及如何控制数字下落的速度和间隔。 ... [详细]
  • 利用Node.js实现PSD文件的高效切图
    本文介绍了如何通过Node.js及其psd2json模块,快速实现PSD文件的自动化切图过程,以适应项目中频繁的界面更新需求。此方法不仅提高了工作效率,还简化了从设计稿到实际应用的转换流程。 ... [详细]
  • 本文详细探讨了在Java中如何将图像对象转换为文件和字节数组(Byte[])的技术。虽然网络上存在大量相关资料,但实际操作时仍需注意细节。本文通过使用JMSL 4.0库中的图表对象作为示例,提供了一种实用的方法。 ... [详细]
  • 处理Android EditText中数字输入与parseInt方法
    本文探讨了如何在Android应用中从EditText组件安全地获取并解析用户输入的数字,特别是用于设置端口号的情况。通过示例代码和异常处理策略,展示了有效的方法来避免因非法输入导致的应用崩溃。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 本报告记录了嵌入式软件设计课程中的第二次实验,主要探讨了使用KEIL V5开发环境和ST固件库进行GPIO控制及按键响应编程的方法。通过实际操作,加深了对嵌入式系统硬件接口编程的理解。 ... [详细]
  • 视觉Transformer综述
    本文综述了视觉Transformer在计算机视觉领域的应用,从原始Transformer出发,详细介绍了其在图像分类、目标检测和图像分割等任务中的最新进展。文章不仅涵盖了基础的Transformer架构,还深入探讨了各类增强版Transformer模型的设计思路和技术细节。 ... [详细]
  • 服务器虚拟化存储设计,完美规划储存与资源,部署高性能虚拟化桌面
    规划部署虚拟桌面环境前,必须先估算目前所使用实体桌面环境的工作负载与IOPS性能,并慎选储存设备。唯有谨慎估算贴近实际的IOPS性能,才能 ... [详细]
  • 本文详细介绍如何安装和配置DedeCMS的移动端站点,包括新版本安装、老版本升级、模板适配以及必要的代码修改,以确保移动站点的正常运行。 ... [详细]
  • 想把一组chara[4096]的数组拷贝到shortb[6][256]中,尝试过用循环移位的方式,还用中间变量shortc[2048]的方式。得出的结论:1.移位方式效率最低2. ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • OBS Studio自动化实践:利用脚本批量生成录制场景
    本文探讨了如何利用OBS Studio进行高效录屏,并通过脚本实现场景的自动生成。适合对自动化办公感兴趣的读者。 ... [详细]
author-avatar
灬暗里着迷Dreamland
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有