JAVA中怎么在Jtable中增加一列按钮,并且点击按钮能捕捉事件.希望给出一段代码.感激不尽

如题所述

第1个回答  2013-07-06
import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;
import javax.swing.table.*;

public class ButtonTable extends JFrame{

private static final long serialVersionUID = 1L;
private JTable table = null;
private DefaultTableModel model=null;
private JScrollPane js=null ;
public ButtonTable(){
model = new DefaultTableModel(3,3);
table = new JTable(model);
table.getColumnModel().getColumn(1).setCellEditor(new MyRender());//设置编辑器
table.getColumnModel().getColumn(1).setCellRenderer(new MyRender() );
js = new JScrollPane(table);

this.add(js);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
this.setSize(399, 300);
this.setLocationRelativeTo(null);
}

public static void main(String[] args) {
// TODO Auto-generated method stub
new ButtonTable();
}

}

//渲染 器 编辑器
class MyRender extends AbstractCellEditor implements TableCellRenderer,ActionListener, TableCellEditor{

private static final long serialVersionUID = 1L;
private JButton button =null;
public MyRender(){
button = new JButton("确定不?");
button.addActionListener(this);
}

@Override
public Object getCellEditorValue() {
// TODO Auto-generated method stub
return null;
}

@Override
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
// TODO Auto-generated method stub
return button;
}

@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
JOptionPane.showMessageDialog(null, "渲染器学期", "消息", JOptionPane.OK_OPTION);

}

@Override
public Component getTableCellEditorComponent(JTable table, Object value,
boolean isSelected, int row, int column) {
// TODO Auto-generated method stub
return button;
}

}本回答被提问者和网友采纳

JAVA中怎么在Jtable中增加一列按钮,并且点击按钮能捕捉事件.希望给出...
import javax.swing.*;import javax.swing.table.*;public class ButtonTable extends JFrame{ private static final long serialVersionUID = 1L;private JTable table = null;private DefaultTableModel model=null;private JScrollPane js=null ;public ButtonTable(){ model = new DefaultTableModel(3...

...在Jtable中增加一列按钮,并且点击按钮能捕捉事件。应该怎么增加...
import java.awt.Component;\\x0d\\x0aimport java.awt.event.ActionEvent;\\x0d\\x0aimport java.awt.event.ActionListener;\\x0d\\x0a\\x0d\\x0aimport javax.swing.*;\\x0d\\x0aimport javax.swing.table.*;\\x0d\\x0a\\x0d\\x0apublic class ButtonTable extends JFrame{\\x0d\\x0a\\x0d\\x0aprivate...

java如何在JTable 中的第一列加单选按钮(表示选中这一行),并可以动态...
import javax.swing.table.DefaultTableModel;import javax.swing.table.TableColumn;public class CheckedBoxTabel extends JFrame { private JTable table;private JScrollPane sPane;private DefaultTableModel model;private JButton button, button2;private JPanel pane;public CheckedBoxTabel() { \/\/ TOD...

java Jtable 如何动态添加button按钮
JTable中,单元格的数据显示默认是JTable的效果。如果我们想要按钮显示的效果的话,需要实现swing接口:javax.swing.table.TableCellRenderer,来改变单元格默认的渲染方法。package TableButton;import java.awt.BorderLayout;import java.awt.Component;import javax.swing.JButton;import javax.swing.JPanel;...

jTable 添加按钮
\/\/处理button事件写在这里...System.out.println(((JButton)table.getValueAt(row, column)).getText());} } });} public static void main(String[] args) { JFrame frame = new JFrame();frame.add(new JTableButton());frame.setSize(new Dimension(800, 400));frame.setVisible(true)...

java web 怎么在jtable中添加按钮?
java web在jtable中添加按钮的示例如下:import java.awt.BorderLayout;import java.awt.Color;import java.awt.Component;import java.awt.Dimension;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.io.File;import javax.swing.BorderFactory;import javax.swing....

如何在JAVA表格中添加按钮组件?
就是JTable中,加入JButton对吧。那个简单。写一个类继承与JButton并实现javax.swing.table.TableCellRenderer接口就行了。然后用JTable的getColumn(Object)获取列,再用setCellRenderer(TableCellRenderer cellRenderer)方法就可以添加进表格了。附相关API:javax.swing.JTable public TableColumngetColumn(...

java怎么获取jtable中的单元格的cell对象啊?
回答:10 我在百度上找了半天也没找到,大哥教教我啊(我看你的分了,好多啊,我的分少,别介意啊) 补充: 多谢兄台指点,可是小弟搞了半天还是不明白,能不能再详细一点啊,我是想获得一个jtable中的单元格的cell的对象或者行的对象,进而对选中的单元格或者是选中的行进行操作,比如改变这一行的背景然后取...

JTable中加入一栏单选框 JAVA
只有一个简单的单选框,希望对楼主有所帮助。import java.awt.GridLayout;import java.awt.Panel;import javax.swing.ButtonGroup;import javax.swing.JFrame;import javax.swing.JRadioButton;public class TestJRadiobutton { public static void main(String[] args) { new MyFrame();} } class My...

如何在JList中,添加一个按钮.就是说JList的一行里面, 有一个JLabe, J...
Java对这种情况预置了JTable。省去了重复发明轮子的过程 学和用JTable把。简写的代码可以实现一行三个,但没有实现聚焦系统。不实用。还是直接用JTable import java.awt.Component;import java.util.Vector;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax....

相似回答