问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Java Swing设计JList的时候,可以一次性大量地添加或删除元素吗?

发布网友 发布时间:2022-04-26 00:59

我来回答

2个回答

热心网友 时间:2023-10-03 04:19

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JlistD {
public JlistD(String title) {
JFrame frame = new JFrame(title);
setLAF(); // 设置风格
frame.getContentPane().add(new ListPanel());
init(frame);
}
private void setLAF() {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception ignore) {
}
}
public void init(JFrame f) {
f.setAlwaysOnTop(true);
f.pack();
f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
f.setLocationRelativeTo(null);
f.setVisible(true);
}
public static void main(String[] args) {
new JlistD("JListD");
}
}
class ListPanel extends JPanel {
private DefaultListModel model;
private JList list;
public ListPanel() {
Dimension d = new Dimension(300, 300);
this.setPreferredSize(d);
this.setLayout(new BorderLayout());
addList();
addButtons();
}
private void addList() {
model = new DefaultListModel();
list = new JList(model);
list.setFixedCellHeight(20);
list.setPreferredSize(new Dimension(300, 40));
this.add(list, BorderLayout.NORTH);
}
private void addButtons() {
JButton limit = new JButton("limit");
JButton reset = new JButton("reset");
JButton clear = new JButton("clear");
JPanel panel = new JPanel();
limit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
list.setPreferredSize(new Dimension(300, 100));
list.revalidate();
}
});
reset.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (model.getSize() == 0) {
String[] items = { "A", "B", "C", "D", "E", "F", "G", "H", "I" };
for (int i = 0; i < items.length; i++) {
model.add(i, items[i]);
}
}
list.setPreferredSize(new Dimension(300, 180));
list.revalidate();
}
});
clear.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
model.removeAllElements();
list.setPreferredSize(new Dimension(300, 40));
list.revalidate();
}
});
panel.add(limit);
panel.add(reset);
panel.add(clear);
this.add(panel, BorderLayout.SOUTH);
}
}

热心网友 时间:2023-10-03 04:20

最简单的方法,按limit的时候把字符串数组拷贝个指定元素数的副本,用这个副本做参数调用list的setListData方法,按reset就用完整数组做参数。

另一个方法是自定义一个ListModel,在里面根据limit、reset设置返回给JList的数量。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
做了好乱的梦,求解! ae缺少p1效果是要装什么插件? ...荣耀》中“网络诊断”居然可以测定酒店有无摄像头,这是好事吗? 七叶一枝花花苞里面的红米是什么 q了是什么意思? ...Q就可以,格式也没错,也只几十K,别人发给我都可以,哪里出问题了... 显的么说友Q在微 ?Q上新示怎让在说我空里动间的态不更好博 诺诗兰户外品牌怎么样 新隋唐英雄传张卫健萧妃是刘小庆吗 红尖椒和朝天椒介绍!红尖椒和朝天椒哪个辣? 跪求关于 Java Swing 的视频教程 JAVA中Swing怎么可视化开发 用JAVA做好一个Swing做好一上简单应用,怎样编译出来,放在其他电脑上使用 JAVA Swing 如何将JTable的内容显示在当前的界面上面,而不是新创建一... java swing 的几个问题,求教 哪有JAVA SWING的视频教程下载 java swing中按钮的颜色要怎么设置 java的swing组件的使用 关于java swing 的学习方法 java swing怎么学 周记300字小学六年级 漏斗网蜘蛛为什么只有雄性会把人咬死,雌性就没什么危害? 漏斗形蜘蛛的急救措施 被漏斗形蜘蛛咬能不死吗? 澳大利亚漏斗形蜘蛛和黑寡妇蜘蛛(简称黑寡妇澳洲红背蛛和褐寡妇蜘蛛)哪种毒性更强? 帮朋友组台机子、3500左右(山东淄博)、主要是看电影、玩cf等、请懂的推荐一下、谢谢、 悉尼漏斗形蜘蛛会主动咬人吗 山东什么香烟哪一种性价比很高? 经济实惠的 请推荐3000-3500元的笔记本电脑,,性价比高的,关键是在(山东)小县城能够容易买到的。谢谢!! 漏斗形蜘蛛的毒性 请教用java制作动画的教程 java(swing)编写记事本的视频(附带讲解)! Java + Swing 输入提示 java swing的ActionListener怎么处理事件的? 急,急,急 请教大家推荐本java swing的入门电子书。。。 java swing 谁能发给我swing的api说明文档或教程 开一家炸鸡店能挣多少钱呢? JAVA SWING如何让一个按钮半透明 炸鸡店的炸鸡天天放那,不会变质吗? 开炸鸡店需要什么手续? 炸鸡店有什么你不了解的秘密? 炸鸡店上班有什么危害? 炸鸡加盟店的利润多大? 酒店会计涉及的科目 求企业级HRS酒店优惠券的企业Authorization(授权码)和企业 Activation(激活码) 固丽酒店智能门锁授权码,门锁无法用了,能不能说出授权码? 配置windows server 2012 远程桌面授权过程中“企业协议授权码”是怎么来的? 企业翼支付授权码哪里可以找到 我是做酒店前台的。 客人刷的预授权卡单丢了。只有授权号怎么做预授 跪求授权码,请各位大神伸出援手帮小妹一忙,比较急!!!