import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class TestList extends JList{
public TestList() {
this.setCellRenderer(new TestCellRender());
DefaultListModel m = new DefaultListModel();
this.setModel(m);
m.addElement("fasdf");
m.addElement("aaa");
}
class TestCellRender extends JButton implements ListCellRenderer{
public TestCellRender(){
addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
System.out.println("1 actionPerformed:" + getText());
}
});
}
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
setText(index+"");
return this;
}
}
public static void main(String[] args) {
JFrame f = new JFrame();
f.getContentPane().add(new TestList());
f.setSize(400,300);
f.setLocationRelativeTo(null);
f.setVisible(true);
}
}
怎么点击按钮不触发ActionListener事件啊
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class TestList extends JList{
public TestList() {
this.setCellRenderer(new TestCellRender());
DefaultListModel m = new DefaultListModel();
this.setModel(m);
m.addElement("fasdf");
m.addElement("aaa");
}
class TestCellRender extends JButton implements ListCellRenderer{
public TestCellRender(){
addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
System.out.println("1 actionPerformed:" + getText());
}
});
}
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
setText(index+"");
return this;
}
}
public static void main(String[] args) {
JFrame f = new JFrame();
f.getContentPane().add(new TestList());
f.setSize(400,300);
f.setLocationRelativeTo(null);
f.setVisible(true);
}
}
怎么点击按钮不触发ActionListener事件啊
解决方案 »
- Netbeans使用Lucida Console字体,并且让其能支持中文
- 一个简单的按钮布局界面,想简化代码,但为什么都不显示啊
- byte数据合并
- ip地址的问题
- HiPiHi 招聘有CMS开发经验的JAVA工程师
- 小问一下swing中的布局类,请兄台们指教下。
- 高分求助原代码!!用java做画几何图形,用鼠标能拖放,设置控制点后能改变形状,来者有分!!!!
- 一个PACKAGE问题
- !!!!VA中作的应用程序,使用swing,为什么导出就不能运行?
- 请问:我在applet中通过响应一个服务器信息,想把也个按钮setVisible(false),为什么要把applet最小化后才能把按钮隐掉
- java 对象传参数 可否传类型相同的参数
- JTree父节点和叶子节点用图片显示
public TestCellRender() {
addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent arg0) {
System.out.println("1 actionPerformed:" + getText());
}
});
}
setText(index+"");
return this;
}
这样写没有意义啊,你可以setText(value+"");