import java.awt.BorderLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.table.DefaultTableModel;
//VS4E -- DO NOT REMOVE THIS LINE!
public class TestJTable extends JFrame {
private static final long serialVersionUID = 1L;
private JTable jTable0;
private JScrollPane jScrollPane0;
private static final String PREFERRED_LOOK_AND_FEEL = "javax.swing.plaf.metal.MetalLookAndFeel";
public TestJTable() {
initComponents();
}
private void initComponents() {
add(getJScrollPane0(), BorderLayout.CENTER);
setSize(478, 240);
}
private JScrollPane getJScrollPane0() {
if (jScrollPane0 == null) {
jScrollPane0 = new JScrollPane();
jScrollPane0.setViewportView(getJTable0());
}
return jScrollPane0;
}
private JTable getJTable0() {
if (jTable0 == null) {
Vector<Student> stus = new Vector<Student>();
stus.add(new Student("aa",23));
stus.add(new Student("bb",22));
stus.add(new Student("cc",21));
jTable0 = new JTable(new MyTableModel(stus));
jTable0.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent e){
int row = jTable0.getSelectedRow();
String name = jTable0.getValueAt(row, 0).toString();
String age = jTable0.getValueAt(row, 1).toString();
JOptionPane.showMessageDialog(TestJTable.this, "row:"+row+"\r\nvalue:"+name+","+age);
}
});
}
return jTable0;
}
private static void installLnF() {
try {
String lnfClassname = PREFERRED_LOOK_AND_FEEL;
if (lnfClassname == null)
lnfClassname = UIManager.getCrossPlatformLookAndFeelClassName();
UIManager.setLookAndFeel(lnfClassname);
} catch (Exception e) {
System.err.println("Cannot install " + PREFERRED_LOOK_AND_FEEL
+ " on this platform:" + e.getMessage());
}
}
/**
* Main entry of the class.
* Note: This class is only created so that you can easily preview the result at runtime.
* It is not expected to be managed by the designer.
* You can modify it as you like.
*/
public static void main(String[] args) {
installLnF();
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
TestJTable frame = new TestJTable();
frame.setDefaultCloseOperation(TestJTable.EXIT_ON_CLOSE);
frame.setTitle("TestJTable");
frame.getContentPane().setPreferredSize(frame.getSize());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
});
}
}
JTable示例源码(Swing demo)
5星 · 超过95%的资源 需积分: 10 87 浏览量
2011-07-14
09:18:05
上传
评论
收藏 8KB RAR 举报
sunnyai
- 粉丝: 0
- 资源: 1
最新资源
- 基于jsp+mysql的JSP九宫格日记本源码.zip
- 基于jsp+mysql的JSP会员卡积分管理系统源码.zip
- 仿小米商城微信小程序源码+项目说明.zip
- 基于jsp+mysql的JSP个人日记本源码.zip
- 南溪CN No1 fps网络断网工具.zip
- 基于jsp+mysql的JSP宠物商城源码.zip
- C++开发基于Qt的音乐播放器的设计与实现项目源码+项目使用说明(毕业设计).zip
- 基于jsp+mysql+servlet的JSP图书馆图书管理系统源码.zip
- C++开发基于Qt的音乐播放器的设计与实现项目源码+项目使用说明(毕业设计).zip
- 【2024win11软件启动速度反应慢解决方法附工具】
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈