欢迎来到天天文库
浏览记录
ID:34723784
大小:99.68 KB
页数:4页
时间:2019-03-10
《java创建带图片的list》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、】(技术交流)JAVA创建带图片的ListJ2SE技术2010-06-2615:37:17阅读59评论0 字号:大中小 订阅在很多软件开发中为了让用户有更好的界面需要在列表中加入图片,最典型的就是聊天软件中的好友列表,如在腾讯QQ中的好友列表:不仅加入的常规的文本,还有图片头像,这也是用标准的JAVA所不能做出来的组件,要做出这样的组件,方法很简单,自定义列表,自己描绘列表单元格,同样也需要实现接口ListCellRenderer来描绘单元格 首先先创建一个类实现ListCellRenderer接口,但为了更方便的使用我
2、们自定义的列表,笔者把该类和继承JList的IconList类封装在一起 代码如下: import java.awt.Color;import java.awt.Component;import java.awt.Font;import javax.swing.BorderFactory;import javax.swing.DefaultListModel;import javax.swing.Icon;import javax.swing.JLabel;import javax.swing.JList;import j
3、avax.swing.ListCellRenderer;public class IconList extends JList { public IconList(DefaultListModel model)//使用列表模板创建列表 { super(model);//调用父类构造方方 setCellRenderer(new IconCellRenderer());//设置单元格设置 se】(技术交流)JAVA创建带图片的ListJ2SE技术2010-06-2615:37:17阅读59评论0 字号:大中小
4、 订阅在很多软件开发中为了让用户有更好的界面需要在列表中加入图片,最典型的就是聊天软件中的好友列表,如在腾讯QQ中的好友列表:不仅加入的常规的文本,还有图片头像,这也是用标准的JAVA所不能做出来的组件,要做出这样的组件,方法很简单,自定义列表,自己描绘列表单元格,同样也需要实现接口ListCellRenderer来描绘单元格 首先先创建一个类实现ListCellRenderer接口,但为了更方便的使用我们自定义的列表,笔者把该类和继承JList的IconList类封装在一起 代码如下: import java.awt.C
5、olor;import java.awt.Component;import java.awt.Font;import javax.swing.BorderFactory;import javax.swing.DefaultListModel;import javax.swing.Icon;import javax.swing.JLabel;import javax.swing.JList;import javax.swing.ListCellRenderer;public class IconList extends JL
6、ist { public IconList(DefaultListModel model)//使用列表模板创建列表 { super(model);//调用父类构造方方 setCellRenderer(new IconCellRenderer());//设置单元格设置 setBackground(Color.white);//设置列表背景色 setForeground(Color.blue);//设置列表前景色 } class IconCellRenderer extends JLabel imple
7、ments ListCellRenderer { public Component getListCellRendererComponent(JList list,Object obj,int index, boolean isSelected, boolean cellHasFocus) { Object[] cell=(Object[])obj; setIcon((Icon)cell[0]);//设置图片 setText((cell[1].toString())
8、);//设置文本 setToolTipText(cell[2].toString());//设置提示文本 setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));//加入宽度为5的空白边框 if(is
此文档下载收益归作者所有