⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 animatediconheaderexample.java

📁 tame,扩展了好多SWing组件:JTable
💻 JAVA
字号:
/* (swing1.1.1beta2)*/package tame.examples;import java.awt.Image;import java.awt.Rectangle;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.awt.image.ImageObserver;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JScrollPane;import javax.swing.JTable;import javax.swing.table.AbstractTableModel;import javax.swing.table.JTableHeader;/**@author Nobuo Tamemasa@version 1.0 06/19/99*/public class AnimatedIconHeaderExample extends JFrame {  public AnimatedIconHeaderExample(){    super( "AnimatedIconHeader Example" );    final Object[][] data =  new Object[][]{      {"Leopard","Lycaon"},      {"Jaguar"  ,"Jackal"},      {"Cheetah","Coyote"},      {"Puma"   ,"Dingo" },      {"Lynx"   ,"Fox"   },      {"Tom"    ,"Hot"  }};    final String[] column = new String[]{"Cat","Dog"};    ImageIcon[] icons = {new ImageIcon("images/3-119.gif"),                         new ImageIcon("images/3-6.gif")};    AbstractTableModel model = new AbstractTableModel() {      public int getColumnCount() { return column.length; }      public int getRowCount()    { return data.length; }      public String getColumnName(int col) {       return column[col];      }      public Object getValueAt(int row, int col) {        return data[row][col];      }    };    JTable table = new JTable( model );    JTableHeader header = table.getTableHeader();    JLabel renderer;    for (int i=0;i<model.getColumnCount();i++) {      renderer = (JLabel)table.getColumn(column[i]).getHeaderRenderer();      renderer.setIcon(icons[i]);      // If you have only one column.      // icons[i].setImageObserver(header);      icons[i].setImageObserver(new HeaderImageObserver(header, i));    }    JScrollPane pane = new JScrollPane(table);    getContentPane().add(pane);  }  class HeaderImageObserver implements ImageObserver {    JTableHeader header;    int col;    HeaderImageObserver(JTableHeader header, int col) {      this.header = header;      this.col    = col;    }    public boolean imageUpdate(Image img, int flags,			       int x, int y, int w, int h) {      if ((flags & (FRAMEBITS|ALLBITS)) != 0) {        Rectangle rect = header.getHeaderRect(col);        header.repaint(rect);      }      return (flags & (ALLBITS|ABORT)) == 0;    }  }  public static void main(String[] args) {    AnimatedIconHeaderExample frame = new AnimatedIconHeaderExample();    frame.addWindowListener(new WindowAdapter() {      public void windowClosing(WindowEvent e) {        System.exit(0);      }    });    frame.setSize( 300, 140 );    frame.setVisible(true);  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -