Jtable添加图片,并自由改变图片大小
来源:互联网 发布:判断80端口是否打开 编辑:程序博客网 时间:2024/05/04 03:34
需要重写方法
1、jtable中部分代码。。主要看图片处理的部分
public JPanel getBookPanel(Vector<Book> bookList) throws IOException {Vector<String> title = new Vector<String>();// 列名title.add("书图");title.add("isbn");title.add("书名");title.add("书类型");title.add("单价");title.add("出版社");title.add("作者");Vector<Vector<Object>> data = new Vector<Vector<Object>>();for (int i = 0; i < bookList.size(); i++) {Vector<Object> v = new Vector<Object>();Book b = bookList.get(i);ImageIcon icon = new ImageIcon("images/" + b.getBookImage());//图片处理icon.setImage(icon.getImage().getScaledInstance(80,100,Image.SCALE_DEFAULT)); Image img = icon.getImage();v.add(img);v.add(b.getIsbn());v.add(b.getBookName());v.add(b.getBookType());v.add(b.getPrice());v.add(b.getPublish());v.add(b.getAuthor());data.add(v);}model = new DefaultTableModel(data, title);table = new JTable(model); table.getTableHeader().setReorderingAllowed(false); //不可整列移动 table.getTableHeader().setResizingAllowed(false); table.getColumnModel().getColumn(0).setCellRenderer(new ImageRenderer());table.setRowHeight(100);
2、ImageRenderer类
package com.seven.view;import java.awt.BorderLayout;import java.awt.Component;import java.awt.Image;import java.io.File;import java.io.IOException;import javax.imageio.ImageIO;import javax.swing.ImageIcon;import javax.swing.JLabel;import javax.swing.JTable;import javax.swing.table.TableCellRenderer;public class ImageRenderer implements TableCellRenderer{ @SuppressWarnings("unchecked") @Override public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int rowIndex, int columnIndex) { if( value instanceof Image ){ JLabel jLabel = new JLabel(); jLabel.setLayout(new BorderLayout());//设置布局 jLabel.setIcon(new ImageIcon((Image)value));//给jlable设置图片 return jLabel; } else if( value instanceof File ) { try { return new JLabel(new ImageIcon(ImageIO.read((File)value))); } catch(IOException ex) { throw new RuntimeException(ex.getMessage(), ex); } } else { String val = String.valueOf(value); try { return new JLabel(new ImageIcon(ImageIO.read(new File(val)))); } catch(IOException ex) { throw new RuntimeException(ex.getMessage(), ex); } } }}
- Jtable添加图片,并自由改变图片大小
- 上传图片并改变图片大小
- VC2010“添加资源->引入JPG图片”会改变图片大小
- 在textView中添加图片并设置图片大小
- c#上传并改变图片大小
- 点击图片改变图片大小,鼠标移入移出改变图片大小
- QGraphicsView如何添加 和改变图片大小!
- iOS textview加载html并改变图片大小
- 自由控制显示图片大小,鼠标拖动图片看效果
- 改变图片大小
- 上传图片并可以调整图片大小
- java 上传图片 并压缩图片大小
- java 上传图片 并压缩图片大小
- 用jQuery在图片加载完成后改变图片大小
- iOS中图片UIImage中图片大小的改变
- JAVA改变图片大小,将图片改为Jpg格式
- 改变图片大小、无级缩放图片大小
- MFC 为对话框添加背景图片并以图片大小显示
- 让Visual Studio 也支持JS代码折叠 [ Visual Studio | #region | #endregion ]
- 在一台机器上同时运行多个Neo4j实例
- 程序设置,url地址过长配置问题
- C/C++误区四:char c = getchar();
- MySQL 数据导入、导出
- Jtable添加图片,并自由改变图片大小
- 什么是伪静态、动态、静态页面
- OracleException: OCI-22053: 溢出错误
- STDMETHOD 与STDMETHODIMP区别
- 最新的qt历史版本下载网站
- Hbase的 KeyValue Class
- 【Android UI设计与开发】第04期:引导界面(四)仿人人网V5.9.2最新版引导界面
- Linux网络编程之System V消息队列
- 指针实现链表