当前位置: 技术问答>java相关
如何在JTable的一个column里添加button?
来源: 互联网 发布时间:2015-06-08
本文导语: 我想在JTable 的一个column里添加button,以提供点击事件而弹出一个popup画面, 但是好像在column李不能添加button. 请问有没有什么替换的方法? | jTable1.getColumn("Con1").setCellRenderer(new ButtonRenderer()); ...
我想在JTable 的一个column里添加button,以提供点击事件而弹出一个popup画面,
但是好像在column李不能添加button.
请问有没有什么替换的方法?
但是好像在column李不能添加button.
请问有没有什么替换的方法?
|
jTable1.getColumn("Con1").setCellRenderer(new ButtonRenderer());
jTable1.getColumn("Con1").setCellEditor(new ButtonEditor(new JCheckBox()));
jTable1.getColumn("Con1").setCellEditor(new ButtonEditor(new JCheckBox()));
|
首先告诉你,在column里可以加button,但是我看你的目的是弹出一个popup画面.
所以根本用不着那么麻烦.这样就可以了.
public class t extends JTable{
public t(){
addMouseListener(new MouseListener(){
public void mouseClicked(MouseEvent e)
{
if(!(e.getModifiers()==e.META_MASK)){//clicked mouse left
JPopupMenu l= new JPopupMenu();
l.show(参数);
}
if (e.getModifiers()==e.META_MASK){//clicked mouse right
JPopupMenu r= new JPopupMenu();
r.show(参数);
}
}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e){}
});
}
}
}
所以根本用不着那么麻烦.这样就可以了.
public class t extends JTable{
public t(){
addMouseListener(new MouseListener(){
public void mouseClicked(MouseEvent e)
{
if(!(e.getModifiers()==e.META_MASK)){//clicked mouse left
JPopupMenu l= new JPopupMenu();
l.show(参数);
}
if (e.getModifiers()==e.META_MASK){//clicked mouse right
JPopupMenu r= new JPopupMenu();
r.show(参数);
}
}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e){}
});
}
}
}
|
参考:
http://www2.gol.com/users/tame/
http://www2.gol.com/users/tame/