package com.lovo.study;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Point;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTabbedPane;
import javax.swing.JTable;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
public class TestTabbedPane extends WinBase {
private JTabbedPane tabPane;
private JPanel p1,p2,p3;
private DataTable dataTable;
private JTable table;
public TestTabbedPane(){
super(500,400);
this.setTitle(this.getClass().getName());
addAllTabs();
addP1();
addTableEvent();
this.setVisible(true);
}
public void addButtons(Container cont){
this.addButton(cont,20,20,100,30,"刷新");
this.addButton(cont,220,20,100,30,"保存");
}
public void addAllTabs(){
tabPane = new JTabbedPane();
p1 = new JPanel();
p2 = new JPanel();
p3 = new JPanel();
tabPane.addTab("英语水平", p1);
tabPane.addTab("表达能力", p2);
tabPane.addTab("技术水平", p3);
tabPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
int index = tabPane.getSelectedIndex();
System.out.println(index);
}
});
JPanel bottomPanel = new JPanel();
bottomPanel.setLayout(new FlowLayout());
JPanel bigPanel = new JPanel(new GridLayout(2,1));
bigPanel.add(tabPane,BorderLayout.NORTH);
bigPanel.add(bottomPanel,BorderLayout.SOUTH);
this.panel.add(bigPanel);
addButtons(bottomPanel);
}
public void addP1(){
String[] title = { "编码", "编码名称" };
// Object[][] data = db.queryForArray("select * from t_english");
Object[][] data = {
{1,"上海"},
{2,"北京"},
{3,"成都"}
};
this.dataTable = new DataTable(title,data);
table = new JTable(dataTable);
JScrollPane sp = new JScrollPane(table);
p1.add(sp, BorderLayout.NORTH);
}
public void addTableEvent(){
table.addMouseListener(new java.awt.event.MouseAdapter()
{
public void mouseClicked(java.awt.event.MouseEvent e)
{
//获取鼠标点击的行的位置(及行数)
Point mousepoint = e.getPoint();
int rowNum = table.rowAtPoint(mousepoint);
int colNum = table.columnAtPoint(mousepoint);
System.out.println("位置:"+rowNum+" , "+colNum+" 数据 = "+dataTable.data[rowNum][colNum]);//TableModel2.this.dataTable
}
});
}
public static void main(String[] args) {
new TestTabbedPane();
}
}