给个提示就是模型-视图-控制器分离的概念,你的方法是实现不了的你要写个类继承AbstractListModel
getElementAt是用来显示数据的,他会显示可视区的数据(表达有问题,你理解一下)然后你写得类作为参数实例化JList还有JList两个方法要调用list.setFixedCellWidth(50);
list.setFixedCellheight(15);
getElementAt是用来显示数据的,他会显示可视区的数据(表达有问题,你理解一下)然后你写得类作为参数实例化JList还有JList两个方法要调用list.setFixedCellWidth(50);
list.setFixedCellheight(15);
解决方案 »
- 在一个Java程序中运行另一个Java程序
- 高分求助,请问用jfreeChart画图,可以在一个图上同时画柱状图和折线图吗?
- 问个关于JUnit的问题。有经验的高手帮帮忙。
- 关于线程interrupt方法的问题,请前辈指点。
- JAVA里如何使用代理服务器啊?
- 如何用Java实现打印功能?
- 我想查一个字符串,并且检查是否一样。
- 请教大虾,为什么我linux7.2下的tomcat起不来,及如何才能与apache整合?
- 如何将我要在APPLET中添加的LABEL放置到一定的位置(我的分不多)
- 面向对象七大设计原则
- 如何获得JList的鼠标单击和键盘回车事件
- "g.getFont().getName()"????不太明白?两个方法可以连继调用!
list.setModel(DefaultModel);之后你可以向DefaultModel中Add或Remove数据,可以马上显示出来。
private JPanel contentPane;
private BorderLayout borderLayout1 = new BorderLayout();
JList jl=null;
JButton jb=new JButton("addRow");
Vector v=new Vector();
public test() {
this.setSize(400,300);
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(new FlowLayout());
v.addElement("1");
jl=new JList(v);
jl.setFixedCellWidth(50);
contentPane.add(jl);
contentPane.add(jb);
jb.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
addRow(e);
}
});
this.setVisible(true);
} protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
} public void addRow(ActionEvent e) {
v.addElement("1");
jl.updateUI();
jl.validate();
this.validate();
}
}