/**
* 本例结合JList和JScrollPane共同使用
* @author Wfei
*
*/
public class JListKnow extends JFrame
{
JList jListKnow01;
JList jListKnow02;
JScrollPane jScrollPane02; JSplitPane jSplitPane;
JPanel jPanelTop;
JPanel jPanelBottom;
public JListKnow()
{
this.setBounds(300, 100, 500, 500);
this.setTitle("JList的两种使用方式:推荐第二种使用方式");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jPanelTop = new JPanel();
jPanelBottom = new JPanel(); jSplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT,jPanelTop,jPanelBottom);
jSplitPane.setDividerLocation(225); this.add(jSplitPane); String[] values = new String[]{"CCCCCC","AAAAAAAA","CCCCCC","DDDDDDD","EEEEEEEEEEEE","FFFFFFFFFFF","HHHHHHHHHHHH"};
/********************************JList第一种使用方式*************************************/
jListKnow01 = new JList(values); //设置默认选择项
jListKnow01.setSelectedIndex(1); //得到已选择项的索引
int index = jListKnow01.getSelectedIndex();//JOptionPane.showMessageDialog(null, index+":被选中了");
int[] indexS = jListKnow01.getSelectedIndices();
//得到已选择项的值
String value = (String) jListKnow01.getSelectedValue();
// String[] svalues = (String[]) jListKnow01.getSelectedValues(); //设置列表的选择模式 默认为多选模式
jListKnow01.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); jPanelTop.add(jListKnow01);
/********************************JList第二种使用方式:推荐*************************************/
/********************************通过模型构建列表********************************/
//实例化模型
DefaultListModel defaultListModel = new DefaultListModel();
//向模型中添加元素
for (int i = 0; i < values.length; i++)
{
defaultListModel.addElement(values[i]);
}
//删除模型中所有的元素
// defaultListModel.removeAllElements();
//根据索引移除模型中的元素,可能会因为没有该索引二报错
// defaultListModel.remove(0);
//根据值移除模型中的元素,如果存在多个相同的值,则移除第一个索引的值,如果没有,不会报错
defaultListModel.removeElement("CCCCCC");
//替换制定索引处的元素
defaultListModel.setElementAt("哈哈哈", 1);
//根据模型实例化出来JList
jListKnow02 = new JList(defaultListModel); jScrollPane02 = new JScrollPane(jListKnow02); jPanelBottom.add(jListKnow02);
}
public static void main(String[] args)
{
JListKnow jListKnow = new JListKnow();
jListKnow.setVisible(true);
}
}

JAVA GUI学习 - JList列表、JScrollPane滚动条组件学习的更多相关文章

  1. JAVA GUI学习 - JPopupMenu鼠标右键菜单组件学习

    public class JPopmenuKnow { public void test() { //为表格添加鼠标右键菜单 JMenuItem jMenuItemFileInfo = new JMe ...

  2. Java GUI:将JPanel添加进JScrollPane

    实现的目标: 因为在滚动框中含有很多个Java GUI 组件,因此这里采用JPanel面板包住这些组件,在用JScrollPane实现滚动 问题1:布局揉在一起 JPanel有自己默认的布局方式,因此 ...

  3. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  4. Java GUI编程4---标签组件JLabel

    Java GUI编程4---标签组件JLabel 2018年06月11日 22:06:58 蓝蓝223 阅读数 12103更多 个人分类: Java书籍摘抄 所属专栏: Java Swing图形界面 ...

  5. amazeui学习笔记--css(常用组件8)--列表list

    amazeui学习笔记--css(常用组件8)--列表list 一.总结 1.链接列表:就是多个链接在一起组成的列表, 使用 <ul> 结构嵌套链接列表,添加 .am-list.还是ui包 ...

  6. amazeui学习笔记--css(常用组件5)--评论列表Comment

    amazeui学习笔记--css(常用组件5)--评论列表Comment 一.总结 1.am-comment:使用am-comment来声明评论对象,这个是放在article里面的,虽然article ...

  7. Java GUI学习,贪吃蛇小游戏

    JAVA GUI练习 贪吃蛇小游戏 前几天虽然生病了,但还是跟着狂神学习了GUI的方面,跟着练习了贪吃蛇的小项目,这里有狂神写的源码点我下载,还有我跟着敲的点我下载,嘿嘿,也就注释了下重要的地方,这方 ...

  8. 写在学习Java GUI之前

    Java GUI就是用Java语言开发桌面应用,而Java又有三个Java GUI库,分别为AWT,Swing和SWT/JFace. 现在要学的是Swing库. 后记:开发桌面应用,不止一种技术,现在 ...

  9. java Gui编程 事件监听机制

    1.     GUI编程引言 以前的学习当中,我们都使用的是命令交互方式: 例如:在DOS命令行中通过javac java命令启动程序. 软件的交互的方式:   1. 命令交互方式    图书管理系统 ...

随机推荐

  1. js添加删除元素

    <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...

  2. mysql查询结果写入文件

    注:转自csdn zuyi532 方法1: shell> mysql -uroot -proot -h localhost xxx库 -e " select * from xxx表 l ...

  3. R与数据分析旧笔记(六)多元线性分析 下

    逐步回归 向前引入法:从一元回归开始,逐步加快变量,使指标值达到最优为止 向后剔除法:从全变量回归方程开始,逐步删去某个变量,使指标值达到最优为止 逐步筛选法:综合上述两种方法 多元线性回归的核心问题 ...

  4. java编辑器

    package editor; import java.io.*; import java.awt.*; import java.awt.datatransfer.Clipboard; import ...

  5. hdu 4289 Control 网络流

    题目链接 给出一些点, 每个点有一个权值, 给出一些边, 起点以及终点, 去掉一些点使得起点和终点不连通, 求最小的val. 拆点, 把一个点s拆成s和s', 之间建一条边, 权值为点权. 对于一条边 ...

  6. ZOJ 3741 Eternal Reality

    Eternal Reality Time Limit: 2 Seconds                                      Memory Limit: 65536 KB In ...

  7. Angular ng-repeat 对象和数组遍历

    直接上代码 <!DOCTYPE html> <html> <head> <meta name="description" content= ...

  8. Qt限制文本框输入的方法(使用QRegExpValidator,为QLineEdit所独有)

    在做界面编程的时候,对文本框的处理往往是个很头疼的事情,一是焦点进入文本框时,从人性化考虑,应选择文本框中文本,方便输入:二是,限制文本框的输入,只允许输入有效的文本,如果不这样做的话,那么就需要在程 ...

  9. makefile简单helloworld

    最近要在unix系统上开发c++应用程序,但默认情况下unix编译c++程序需要使用makefile.其实makefile语法还是比较简单,看上去有点像ant.废话不说了,直接上helloworld. ...

  10. Objective-c 集合对象

    集合(NSSet)是一组单值对象的组合,集合对象的操作包括:搜索,添加,删除集合中的成员(可变集合的功能),比较两个集合,计算两个集合的交集,并集等. 下面来看下(NSSet)的方法: 1)集合的构建 ...