江湖救急 各位大侠 小弟用java设计时用到Jtable 谁知道选择里面的记录时 怎样使用监听事件啊 valuechanged
3个回答
展开全部
添加表格的事件处理
view.getTable().addMouseListener(new MouseListener() {
public void mousePressed(MouseEvent e) {
// 鼠标按下时的处理
}
public void mouseReleased(MouseEvent e) {
// 鼠标松开时的处理
}
public void mouseEntered(MouseEvent e) {
// 鼠标进入表格时的处理
}
public void mouseExited(MouseEvent e) {
// 鼠标退出表格时的处理
}
public void mouseClicked(MouseEvent e) {
// 鼠标点击时的处理
}
});
获取数据:
1) 取得用户所选的单行
int selectRows=table.getSelectedRows().length;// 取得用户所选行的行数
DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
if(selectRows==1){
int selectedRowIndex = table.getSelectedRow(); // 取得用户所选单行
.// 进行相关处理
}
2) 取得用户所选的多行
int selectRows=table.getSelectedRows().length;// 取得用户所选行的行数
DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
if(selectRows>1)
int[] selRowIndexs=table.getSelectedRows();// 用户所选行的序列
for(int i=0;i<selRowIndexs.length;i++){
// 用tableModel.getValueAt(row, column)取单元格数据
String cellValue=(String) tableModel.getValueAt(i, 1);
}
}
view.getTable().addMouseListener(new MouseListener() {
public void mousePressed(MouseEvent e) {
// 鼠标按下时的处理
}
public void mouseReleased(MouseEvent e) {
// 鼠标松开时的处理
}
public void mouseEntered(MouseEvent e) {
// 鼠标进入表格时的处理
}
public void mouseExited(MouseEvent e) {
// 鼠标退出表格时的处理
}
public void mouseClicked(MouseEvent e) {
// 鼠标点击时的处理
}
});
获取数据:
1) 取得用户所选的单行
int selectRows=table.getSelectedRows().length;// 取得用户所选行的行数
DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
if(selectRows==1){
int selectedRowIndex = table.getSelectedRow(); // 取得用户所选单行
.// 进行相关处理
}
2) 取得用户所选的多行
int selectRows=table.getSelectedRows().length;// 取得用户所选行的行数
DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
if(selectRows>1)
int[] selRowIndexs=table.getSelectedRows();// 用户所选行的序列
for(int i=0;i<selRowIndexs.length;i++){
// 用tableModel.getValueAt(row, column)取单元格数据
String cellValue=(String) tableModel.getValueAt(i, 1);
}
}
展开全部
ArrayIndexOutOfBoundsException
这个是Array数组越界,是个常见的错误,记住这个错误,你以后肯定会碰到的
你的代码不完整 都不好调试,我就直接看下。
Vector v =new Vector();
你直接这么初始化实例就行了
//一下是实例化Vector时候可以用的构造方法
Vector()
构造一个空向量,使其内部数据数组的大小为 10,其标准容量增量为零。
Vector(Collection<? extends E> c)
构造一个包含指定集合中的元素的向量,这些元素按其集合的迭代器返回元素的顺序排列。
Vector(int initialCapacity)
使用指定的初始容量和等于零的容量增量构造一个空向量。
Vector(int initialCapacity, int capacityIncrement)
使用指定的初始容量和容量增量构造一个空的向量。
你用的是第三种,
Vector(int initialCapacity, int capacityIncrement)
使用指定的初始容量和容量增量构造一个空的向量。
你都给这个向量指定了大小了。当然会出错的,
报ArrayIndexOutOfBoundsException错是必然的。
这个是Array数组越界,是个常见的错误,记住这个错误,你以后肯定会碰到的
你的代码不完整 都不好调试,我就直接看下。
Vector v =new Vector();
你直接这么初始化实例就行了
//一下是实例化Vector时候可以用的构造方法
Vector()
构造一个空向量,使其内部数据数组的大小为 10,其标准容量增量为零。
Vector(Collection<? extends E> c)
构造一个包含指定集合中的元素的向量,这些元素按其集合的迭代器返回元素的顺序排列。
Vector(int initialCapacity)
使用指定的初始容量和等于零的容量增量构造一个空向量。
Vector(int initialCapacity, int capacityIncrement)
使用指定的初始容量和容量增量构造一个空的向量。
你用的是第三种,
Vector(int initialCapacity, int capacityIncrement)
使用指定的初始容量和容量增量构造一个空的向量。
你都给这个向量指定了大小了。当然会出错的,
报ArrayIndexOutOfBoundsException错是必然的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一、填空题。
1、下列指令的输出结果是什么?
System.out.println(7-(3*2.1));______0.6999999999999993__________
System.out.println(7-3*2.1);________0.6999999999999993________
System.out.println(13%(2+1));________1__________
System.out.println((int)4.8);_________4__________
System.out.println((double)1/8+2);____2.125_____________
2.下列Java表达式属于什么类型(A)int(B)double(C)float,并分别给出它们的值。
表达式 类型 值
System.out.println(((long)7/2)*1.1);
(1) 19/3 ____A_________ ____6__________
(2)(int)71.7-2*3 ____A_________ ____65__________
(3)(7+2.3)*3 ___B__________ ___27.900000000000002___________
(4)(7%3)+(int)18.6 _____A________ ___19___________
(5)2+(int)1.9-2.3f _____C________ ____0.70000005__________
(6)((long)7/2)*1.1 ______B_______ ____3.3000000000000003__________
二、判断题
假设要编写一个类,此类已声明了3个对象;redWagon,blueWagon,geenWagon,此三个对象都属于Wagon类,Wagon类定义如下:
class Wagon
{
Wagon()
{
……
}
void push()
{
……
}
}
则指出下面列出的每条指令是否正确(填"对"或"错"):
(a)redWagon.push(); ( 对 )
(b)redWagon.push; ( 错 )
(c)greenWagon.Wagon(); ( 错 )
(d)blueWagon.pull(); ( 错 )
(f)redWagon=new push(); ( 错 )
(g) redWagon=new push(); ( 错 )
(h)blueWagon=new Wagon(); ( 对 )
(i) redWagon=new blueWagon(); ( 错 )
(j) redWagon=new redWagon.push(); ( 错 )
1、下列指令的输出结果是什么?
System.out.println(7-(3*2.1));______0.6999999999999993__________
System.out.println(7-3*2.1);________0.6999999999999993________
System.out.println(13%(2+1));________1__________
System.out.println((int)4.8);_________4__________
System.out.println((double)1/8+2);____2.125_____________
2.下列Java表达式属于什么类型(A)int(B)double(C)float,并分别给出它们的值。
表达式 类型 值
System.out.println(((long)7/2)*1.1);
(1) 19/3 ____A_________ ____6__________
(2)(int)71.7-2*3 ____A_________ ____65__________
(3)(7+2.3)*3 ___B__________ ___27.900000000000002___________
(4)(7%3)+(int)18.6 _____A________ ___19___________
(5)2+(int)1.9-2.3f _____C________ ____0.70000005__________
(6)((long)7/2)*1.1 ______B_______ ____3.3000000000000003__________
二、判断题
假设要编写一个类,此类已声明了3个对象;redWagon,blueWagon,geenWagon,此三个对象都属于Wagon类,Wagon类定义如下:
class Wagon
{
Wagon()
{
……
}
void push()
{
……
}
}
则指出下面列出的每条指令是否正确(填"对"或"错"):
(a)redWagon.push(); ( 对 )
(b)redWagon.push; ( 错 )
(c)greenWagon.Wagon(); ( 错 )
(d)blueWagon.pull(); ( 错 )
(f)redWagon=new push(); ( 错 )
(g) redWagon=new push(); ( 错 )
(h)blueWagon=new Wagon(); ( 对 )
(i) redWagon=new blueWagon(); ( 错 )
(j) redWagon=new redWagon.push(); ( 错 )
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询