JList用法小结
 String[] words= { "quick", "brown", "hungry", "wild"};
String[] words= { "quick", "brown", "hungry", "wild"}; JList wordList = new JList(words);
JList wordList = new JList(words);
 public void mouseClicked(MouseEvent evt)
public void mouseClicked(MouseEvent evt) {
{ )
   ) {
   { JList source = (JList) evt.getSource();
      JList source = (JList) evt.getSource(); Object[] selection = source.getSelectedValues();
      Object[] selection = source.getSelectedValues(); doAction(selection);
      doAction(selection); }
   } }
} class WordListModel extends AbstractListModel
class WordListModel extends AbstractListModel {
{ /**
   /** Constructs the model.
      Constructs the model. @param n the word length
      @param n the word length */
   */ public WordListModel(int n) { length = n; }
   public WordListModel(int n) { length = n; }
 public int getSize()
   public int getSize() {
   { , length);
      , length); }
   }
 public Object getElementAt(int n)
   public Object getElementAt(int n) {
   { StringBuilder r = new StringBuilder();;
      StringBuilder r = new StringBuilder();; ; i < length; i++)
      ; i < length; i++) {
      { ));
         )); r.insert(, c);
         r.insert(, c); n );
         n ); }
      } return r;
      return r; }
   }
 private int length;
   private int length; public static final char FIRST = 'a';
   public static final char FIRST = 'a'; public static final char LAST = 'z';
   public static final char LAST = 'z'; }
} class FontCellRenderer extends JPanel implements ListCellRenderer
 class FontCellRenderer extends JPanel implements ListCellRenderer {
 { public Component getListCellRendererComponent(JList list, Object value, int index,
    public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus)
       boolean isSelected, boolean cellHasFocus) {
    { text = (String)value;
       text = (String)value; background = isSelected ? list.getSelectionBackground() : list.getBackground();
       background = isSelected ? list.getSelectionBackground() : list.getBackground(); foreground = isSelected ? list.getSelectionForeground() : list.getForeground();
       foreground = isSelected ? list.getSelectionForeground() : list.getForeground(); return this;
       return this; }
    }
 public void paintComponent(Graphics g)
    public void paintComponent(Graphics g) {
    { g.setColor(background);
       g.setColor(background); g.fillRect(, getWidth(), getHeight());  //设置背景色
       g.fillRect(, getWidth(), getHeight());  //设置背景色 g.setColor(foreground);
       g.setColor(foreground); g.drawString(text, );   //在制定位置绘制文本
       g.drawString(text, );   //在制定位置绘制文本 }
    }
 public Dimension getPreferredSize()
    public Dimension getPreferredSize() {
    { );   //Cell的尺寸
       );   //Cell的尺寸 }
    }
 private String text;
    private String text; private Color background;
    private Color background; private Color foreground;
    private Color foreground; }
 }
2D来实现,算是一点小小的难度。
JList用法小结的更多相关文章
- 转载:Hadoop排序工具用法小结
		本文转载自Silhouette的文章,原文地址:http://www.dreamingfish123.info/?p=1102 Hadoop排序工具用法小结 发表于 2014 年 8 月 25 日 由 ... 
- [No000010]Ruby 中一些百分号(%)的用法小结
		#Ruby 中一些百分号(%)的用法小结 #这篇文章主要介绍了Ruby 中一些百分号(%)的用法小结,需要的朋友可以参考下 what_frank_said = "Hello!"#% ... 
- C++ typedef用法小结 (※不能不看※)
		C++ typedef用法小结 (※不能不看※) 第一.四个用途 用途一: 定义一种类型的别名,而不只是简单的宏替换.可以用作同时声明指针型的多个对象.比如:char* pa, pb; // 这多数不 ... 
- 函数fgets和fputs、fread和fwrite、fscanf和fprintf用法小结  (转)
		函数fgets和fputs.fread和fwrite.fscanf和fprintf用法小结 字符串读写函数fgets和fputs 一.读字符串函数fgets函数的功能是从指定的文件中读一个字符串到字符 ... 
- 1:CSS中一些@规则的用法小结  2: @media用法详解
		第一篇文章:@用法小结 第二篇文章:@media用法 第一篇文章:@用法小结 这篇文章主要介绍了CSS中一些@规则的用法小结,是CSS入门学习中的基础知识,需要的朋友可以参考下 at-rule ... 
- 英语语法最终珍藏版笔记- 21it 用法小结
		it 用法小结 it 在英语中的意思较多,用法较广,现总结如下. 一.it作句子的真正主语 1.it 指前面已经提到过的人或事物,有时指心目中的或成为问题的人或事物,作真正主语. 例如: What’s ... 
- [转]ssh常用用法小结
		ssh常用用法小结 1.连接到远程主机: 命令格式 : ssh name@remoteserver 或者 ssh remoteserver -l name 说明:以上两种方式都可以远程登录到远程主机, ... 
- 结构体定义 typedef struct 用法详解和用法小结
		typedef是类型定义的意思.typedef struct 是为了使用这个结构体方便.具体区别在于:若struct node {}这样来定义结构体的话.在申请node 的变量时,需要这样写,stru ... 
- typedef用法小结
		typedef用法小结- - 注意:本文转自网络,版权归原作者所有. typedef typedef用法小结- - 这两天在看程序的时候,发现很多地方都用到typedef,在结构体定义,还有一些数组等 ... 
随机推荐
- Android支付接入(八):Amazon亚马逊支付
			下面跟大家一起走一遍Amazon亚马逊的支付,亚马逊目前刚把业务拓展到大陆市场,但这并不代表Amazon支付不成熟,恰恰相反,Amazon的支付流程,支付结果获取及测试另人称赞,支付流程.测试流程简洁 ... 
- Centos 5.5 更新网卡驱动 bnx2 version: 2.0.2
			操作系统:CentOS release 5.5 (Final) 故障现象:网卡无故自动down掉,使用service network restart 重启后没多久又会自动down , 连接数大概在2 ... 
- Phalcon之 表单(Forms)
			Phalcon中提供了 Phalcon\Forms组件以方便开发人员创建和维护应用中的表单. 以下的样例中展示了主要的用法: <?php use Phalcon\Forms\Form, Phal ... 
- 【cocos2d-x不要在生产白片步骤】第二项:制作Block分类
			由于游戏非常多使用阻断,因此,我们创建了一个单独的类中Block. 于Blcok.h声明了两个初始化函数: static Block* createWithArgs(Color3B color, Si ... 
- 用Java写个ftp传输类实现文件的上传和下载,用ikvmc转成dll
			1.Java类: package com.wjy.ftp.transmission; import java.io.File; import java.io.FileOutputStream; imp ... 
- 【解决方法】ADT在线安装
			作为android开发者,不知道被ADT更新.SDK更新这些更新给强奸了多少次. 今天……我又一次被凌辱了. 无论是 https://dl-ssl.google.com/android/eclipse ... 
- extjs_11_mvc模式
			1.非mvc模式 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWRhbV93enM=/font/5a6L5L2T/fontsize/400/fill/I ... 
- Java学习文件夹
			每天进步一点点,先研究一门语言深入研究下去. 
- JSTL自定义标签库 (二)
			要定义自己的标签,首先写个java类,extends TagSupport 或者 implements Tag ,然后在类体里实现自己想要的方法,或者覆盖父类的方法. 我定义的MyTag代码如下: ... 
- WP开发使用BingMaps地图服务
			原文:WP开发使用BingMaps地图服务 WP8使用BingMaps地图在 SOAP服务如何计算路径 首先需要用到3个服务 1.GeoCode服务-转换地址到地理的经纬度(WebServices地址 ... 
