Swing 有关JList的问题
来源:互联网 发布:mac 抹除系统 重装 编辑:程序博客网 时间:2024/05/22 11:50
JList选中后,并将选中的内容返回到JTextField中去
package com.spasvo.performancerunner.analyzer.word;import java.awt.BorderLayout;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.File;import java.util.ArrayList;import java.util.List;import javax.swing.BorderFactory;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JList;import javax.swing.JPanel;import javax.swing.JScrollPane;import com.spasvo.performancerunner.mainframe.gui.Manager_Config;public class FileSelection {private JFrame file = new JFrame();String[] reportList = { "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "报告1", "报告2","报告3", "报告4", "报告5", "报告6", "报告7", "报告8", "报告9", "报告10" };Object[] selectedReport = new Object[50];private JLabel label1 = new JLabel("报告名称: ");private JList jlist = null;private JButton jbt1 = new JButton("确定");private JButton jbt2 = new JButton("取消");private JLabel label2 = new JLabel();private JPanel p1 = new JPanel();private JPanel p2 = new JPanel();private JPanel p3 = new JPanel();private StringBuffer s = new StringBuffer();private Object[] value =null;public Object[] getJlist() {String path = Manager_Config.getString("WorkspacePath") + "reports\\";System.out.println(path);// 读取所有场景File file = new File(path);if (!file.exists()) {System.out.println(path + " not exists");return null;}File fa[] = file.listFiles();List valueList = new ArrayList();for (int i = 0; i < fa.length; i++) {File fs = fa[i];if (fs.isDirectory()) {System.out.println(fs.getName());// comboBox.addItem(fs.getName());valueList.add(fs.getName());}}value =new String[valueList.size()];for (int i = 0; i < valueList.size(); i++) {value[i] = valueList.get(i);}return value;}public Object[] getFileSelection() {file.setTitle("报告选择");file.setSize(600, 400);file.setVisible(true);p1.setLayout(new BorderLayout());p3.setLayout(new FlowLayout(FlowLayout.LEADING));p3.add(label1);p1.add(p3, BorderLayout.WEST);value=getJlist();jlist=new JList(value);p1.add(new JScrollPane(jlist), BorderLayout.CENTER);p1.add(label2, BorderLayout.EAST);p1.setBorder(BorderFactory.createEtchedBorder());p2.setLayout(new FlowLayout(FlowLayout.RIGHT));p2.add(jbt1);p2.add(jbt2);file.setLayout(new BorderLayout());file.add(p1, BorderLayout.CENTER);file.add(p2, BorderLayout.SOUTH);jbt1.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {file.setVisible(false);selectedReport = jlist.getSelectedValues();for (int i = 0; i < selectedReport.length; i++) {s.append(selectedReport[i]);s.append(";");}setText(s.toString());}});jbt2.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {selectedReport = null;file.setVisible(false);}});return selectedReport;}public void setText(String str) {FlowLayoutDemo.sceneText.setText(str); //将sceneText设置成静态,这样我们在“确定”的单机事件中,
//我们即可对sceneText进行赋值 public static JTextField sceneText = null;}public static void main(String[] args) {FileSelection f = new FileSelection();f.getFileSelection();}}
1、Jlist是里面的内容是写成数组形式的,可以直接通过API获取值
2、 int getSelectedIndex()获取的是单个选项
int[] getSelectedIndices(). 获取的一堆选项
Object getSelectedValue() 获取的是单个选项的值
Object[] getSelectedValues() 获取的是多个选项的值
3、将获取到的值对JTextFiled进行赋值的时候,JTextField设置成静态的
阅读全文
0 0
- Swing 有关JList的问题
- Swing中JList的相关问题(2)
- swing JList JScrollPane使用时不显示数据的问题 JList设置可多选
- swing JList JScrollPane使用时不显示数据的问题 JList设置可多选
- Swing之JList的使用
- Swing之JList的使用
- Swing之JList的使用
- JList的问题
- swing 中的JList的增加和删除
- Swing JList渲染器--DefaultListCellRenderer的使用
- Swing自定义JList
- swing jList绑定数据库
- Swing JList组件
- Swing JList使用
- Swing组件JList的列表数据修改了,如何通知JList改变显
- java Swing JList的操作,增删改查都全了,JList与XML转换
- 具有可过滤功能的JList组件【Swing】
- 具有可过滤功能的JList组件【Swing】
- Qt的Json数据生成--备忘
- JDBC基础----用户登录案例
- 文章标题
- React Native 聊天室置底输入框的设计
- Android实战系列(二)---多用户类型登录(webview)
- Swing 有关JList的问题
- java调用dll文件
- 建设部,住建部,住房和城乡建设部,区别?
- 使用Apache ab进行压测
- React | 高效前端之浅谈
- Android开发从一个activity设置跳转到另一个activity中的一个fragment中的一个viewpager中的某一个页面
- asp.net中HTML控件和web控件的简单理解
- Dubbo/Dubbox的服务消费(二)- 服务发现
- 超强、超详细Redis数据库入门教程