?? tablelistener.java
字號:
/* * This source code is part of TWaver 1.3.1 * * SERVA Software PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * Copyright 2000-2005 SERVA Software, Inc. All rights reserved. */package demo.table;
import java.awt.Dimension;
import java.util.Date;
import java.util.List;
import java.util.Vector;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import twaver.table.TTable;
import twaver.table.TTableAdapter;
import twaver.table.TTableColumn;
import twaver.table.TTableModelEvent;
public class TableListener extends TTableAdapter {
private JTextArea textArea;
private TTable table;
public TableListener(TTable table, JTextArea textArea){
this.textArea = textArea;
this.table = table;
}
public void rowSelectionChanged(List selectedRows, boolean isSelectionAdjusting) {
textArea.append("\nisSelectionAdjusting:" + isSelectionAdjusting);
for(int i=0; i<selectedRows.size(); i++){
Vector rowData = (Vector)selectedRows.get(i);
textArea.append(rowData.get(0) + " ");
}
}
public boolean beforeCellValueChanged(Vector rowData, int columnIndex, Object oldValue, Object newValue) {
if(columnIndex == 9 && newValue instanceof Integer){
if(((Integer)newValue).intValue() > 100){
return false;
}
}
return true;
}
public void rowClicked(int clickCount, Vector rowData, int columnIndex) {
if(clickCount != 2){
rowData.set(8, new Date());
table.getTableModel().publishData();
return;
}
JTextArea textArea = new JTextArea();
StringBuffer sb = new StringBuffer();
for(int i=0; i<rowData.size(); i++){
sb.append("row<" + i + ">=" + rowData.get(i) + "\n");
}
textArea.setText(sb.toString());
JScrollPane scroll = new JScrollPane(textArea);
scroll.setPreferredSize(new Dimension(400, 300));
TTableColumn columnInfo = table.getTableModel().getPublishedColumn(columnIndex);
JOptionPane.showMessageDialog(table, scroll,
"<" + columnInfo.getDisplayName() + "> is double clicked",
JOptionPane.INFORMATION_MESSAGE);
}
public void lockedChanged() {
textArea.append("\ntable locked state:" + table.getTableModel().isLocked() + "");
}
public void tableDataChanged(TTableModelEvent e){
if(e.getType() == TTableModelEvent.UPDATE_CELL){
textArea.append("\noldValue=" + e.getOldValue() + " newValue=" + e.getNewValue());
}
else if(e.getType() == TTableModelEvent.ADD_ROW){
// textArea.append("\n add row:" + e.getRowData());
}
else if(e.getType() == TTableModelEvent.REMOVE_ROW){
textArea.append("\n remove row:" + e.getRowData());
}
else if(e.getType() == TTableModelEvent.CLEAR_TABLE){
textArea.append("\n clear table");
}
else if(e.getType() == TTableModelEvent.ADD_COLUMN){
textArea.append("\n add column:" + e.getTableColumn().getDisplayName());
}
else if(e.getType() == TTableModelEvent.REMOVE_COLUMN){
textArea.append("\n remove column:" + e.getTableColumn().getDisplayName());
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -