当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:16:00  来源:本站整理

java的表格[Java编程]

赞助商链接



  本文“java的表格[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
和树状物一样,表格在Swing相当的宏大和强盛.它们最初有意被计划成以Java数据库连结(JDBC,在15章有介绍)为媒介的“网格”数据库接口,并且因此它们拥有的宏大的机动性,使我们不再感到复杂.无疑,这是足以成为成熟的电子数据表的底子条件并且大概为整本书供应很好的按照.但是,假如我们理解这个的底子条件,它一样大概成立相关的简单的Jtable.
JTable掌握数据的显示方法,但TableModel掌握它自己的数据.因此在我们成立JTable前,应先成立一个TableModel.我们可以全部地履行TableModel接口,但它普通从helper类的AbstractTableModel处简单地担当:
//: Table.java
// Simple demonstration of JTable
package c13.swing;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
import javax.swing.event.*;

// 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) {
      for(int i = 0; i < data.length; i++) {
        for(int j = 0; j < data[0].length; j++)
          System.out.print(data[i][j] + " ");
        System.out.println();
      }
    }
  }
  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 class Table extends JPanel {
  public Table() {
    setLayout(new BorderLayout());
    JTable table = new JTable(new DataModel());
    JScrollPane scrollpane = 
      JTable.createScrollPaneForTable(table);
    add(scrollpane, BorderLayout.CENTER);
  }
  public static void main(String args[]) {
    Show.inFrame(new Table(),200,200);
  }
} ///:~
DateModel包含一组数据,但我们一样能从别的的地方得到数据,比方从数据库中.构建器增添了一个TableModelListener用来在每次表格被改变后打印数组.剩下的办法都遵守Bean的命名法则,并且当JTable需求在DateModel中显示信息时调用.AbstractTableModel供应了默许的setValueAt()和isCellEditable()办法以避免改正这些数据,因此假如我们想改正这些数据,就必须过载这些办法.
一旦我们拥有一个TableModel,我们只需求将它分配给JTable构建器便可.全部有关显示,编辑和更新的具体资料将为我们处理.注意这个程序例子一样将JTable安排在JScrollPane中,这是因为JScrollPane需求一个特别的JTable办法.
  以上是“java的表格[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 利用Javascript实现网页水印(非图片水印)
  • Java开辟环境的搭建
  • Ubuntu java安装与配置
  • 办理Ubuntu 10.04 Firefox3.6 Java浏览器插件不工作的问
  • Ubuntu重装后Java环境的设置
  • Sun Java进入Ubuntu 10.10软件中央
  • Ubuntu 10.10配置Java开辟环境
  • 在Ubuntu 10.10中配置Java环境变量的办法
  • Ubuntu下Java环境的搭建
  • Ubuntu 10.04 下安装 Java, JRE
  • Ubuntu 10.04下的搭建SUN JAVA开辟环境
  • Ubuntu 12.04安装java7
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .