- 論壇徽章:
- 0
|
謝謝諸位
這個(gè)問(wèn)題我又從think in java里面的例子找到了一個(gè)類似的問(wèn)題,同樣也是直接輸入再最大化,或者是拉動(dòng)等resize操作輸入值就消失,這應(yīng)該怎么樣解決呢?
程序如下:
//: c14:JTableDemo.java
//Simple demonstration of JTable.
//<applet code=Table width=350 height=200></applet>
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
import javax.swing.event.*;
import com.bruceeckel.swing.*;
public class test extends JApplet {
private JTextArea txt = new JTextArea(4, 20);
// The TableModel controls all the data:
class DataModel extends AbstractTableModel {
Object[][] data = {
{"one", "two", "three", "four"},
{"five", "six", "seven", "eight"},
{"nine", "ten", "eleven", "twelve"},
};
// Prints data when table changes:
class TML implements TableModelListener {
public void tableChanged(TableModelEvent e) {
txt.setText(""); // Clear it
for(int i = 0; i < data.length; i++) {
for(int j = 0; j < data[0].length; j++)
txt.append(data[j] + " ");
txt.append("
");
}
}
}
public DataModel() { addTableModelListener(new TML());}
public int getColumnCount() { return data[0].length; }
public int getRowCount() { return data.length; }
public Object getValueAt(int row, int col) {
return data[row][col];
}
public void setValueAt(Object val, int row, int col) {
data[row][col] = val;
// Indicate the change has happened:
fireTableDataChanged();
}
public boolean isCellEditable(int row, int col) {
return true;
}
}
public void init() {
Container cp = getContentPane();
JTable table = new JTable(new DataModel());
cp.add(new JScrollPane(table));
cp.add(BorderLayout.SOUTH, txt);
}
public static void main(String[] args) {
Console.run(new test(), 350, 200);
}
} ///:~
請(qǐng)不吝賜教
[ 本帖最后由 沉吟之藍(lán) 于 2005-11-10 17:47 編輯 ] |
-
error1.JPG
(13.95 KB, 下載次數(shù): 23)
下載附件
2005-11-10 17:46 上傳
程序運(yùn)行時(shí)的情況
-
error2.JPG
(17.64 KB, 下載次數(shù): 26)
下載附件
2005-11-10 17:46 上傳
拉動(dòng)后輸入值消失
|