指定固定表格列 : 表格列 « Swing « Java 教程

En
Java 教程
1. 语言基础
2. 数据类型
3. 操作符
4. 流程控制
5. 类定义
6. 开发相关
7. 反射
8. 正则表达式
9. 集合
10. 线
11. 文件
12. 泛型
13. 本土化
14. Swing
15. Swing事件
16. 二维图形
17. SWT
18. SWT 二维图形
19. 网络
20. 数据库
21. Hibernate
22. JPA
23. JSP
24. JSTL
25. Servlet
26. Web服务SOA
27. EJB3
28. Spring
29. PDF
30. 电子邮件
31. 基于J2ME
32. J2EE应用
33. XML
34. 设计模式
35. 日志
36. 安全
37. Apache工具
38. 蚂蚁编译
39. JUnit单元测试
Java
Java 教程 » Swing » 表格列 
14. 62. 2. 指定固定表格列
指定固定表格列
import java.awt.BorderLayout;
import java.awt.Dimension;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JViewport;
import javax.swing.ListSelectionModel;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableModel;

public class FixedColumnModel {

  public static void main(String args[]) {

    final Object rowData[][] { { "1""one""I" }"2""two""II" }"3""three""III" } };

    final String columnNames[] "#""English""Roman" };

    final TableModel fixedColumnModel = new AbstractTableModel() {
      public int getColumnCount() {
        return 1;
      }

      public String getColumnName(int column) {
        return columnNames[column];
      }

      public int getRowCount() {
        return rowData.length;
      }

      public Object getValueAt(int row, int column) {
        return rowData[row][column];
      }
    };

    final TableModel mainModel = new AbstractTableModel() {
      public int getColumnCount() {
        return columnNames.length - 1;
      }

      public String getColumnName(int column) {
        return columnNames[column + 1];
      }

      public int getRowCount() {
        return rowData.length;
      }

      public Object getValueAt(int row, int column) {
        return rowData[row][column + 1];
      }
    };

    JTable fixedTable = new JTable(fixedColumnModel);
    fixedTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

    JTable mainTable = new JTable(mainModel);
    mainTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

    ListSelectionModel model = fixedTable.getSelectionModel();
    mainTable.setSelectionModel(model);

    JScrollPane scrollPane = new JScrollPane(mainTable);
    Dimension fixedSize = fixedTable.getPreferredSize();
    JViewport viewport = new JViewport();
    viewport.setView(fixedTable);
    viewport.setPreferredSize(fixedSize);
    viewport.setMaximumSize(fixedSize);
    scrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, fixedTable.getTableHeader());
    scrollPane.setRowHeaderView(viewport);

    JFrame frame = new JFrame("Fixed Column Table");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.add(scrollPane, BorderLayout.CENTER);
    frame.setSize(300150);
    frame.setVisible(true);
  }
}
14. 62. 表格列
14. 62. 1. 可调整大小的表格列可调整大小的表格列
14. 62. 2. 指定固定表格列指定固定表格列
14. 62. 3. 改变列的宽度改变列的宽度
14. 62. 4. 在表格组件设置列宽度
14. 62. 5. 在一个表格阴影行和列
14. 62. 6. 黄色列
14. 62. 7. Converts a visible column index to a column index in the model.
14. 62. 8. 插入一个新表列
14. 62. 9. Converts a column index in the model to a visible column index
14. 62. 10. Returns the visible columns in the order that they appear in the model
14. 62. 11. Get the columns from TableColumnModel in the order that they appear in the view
14. 62. 12. 获取列计数
14. 62. 13. Returns the TableColumn associated with the specified column index in the model
14. 62. 14. Setting the Column Resize Mode of a JTable Component: Disable auto resizing
14. 62. 15. 在一个表格锁定列宽度
14. 62. 16. Appending a Column to a JTable Component using DefaultTableModel
14. 62. 17. 添加栏
14. 62. 18. 禁用autoCreateColumnsFromModel
14. 62. 19. 添加列不影响现有列
14. 62. 20. Remove the first visible column without removing the underlying data
14. 62. 21. Move the last visible column so it becomes the first visible column
14. 62. 22. 最后一栏转移到第一列
14. 62. 23. Packing a Column of a JTable Component according to the header text
14. 62. 24. Packing a Column of a JTable Component according to the row data
14. 62. 25. 基于单元格设置列宽
14. 62. 26. 设置关闭表列自动调整
14. 62. 27. 改变列名称
14. 62. 28. Disable auto resizing, Set the first visible column to 100 pixels wide
14. 62. 29. 改变第二可见列
14. 62. 30. 在模型改变第三列
14. 62. 31. Displaying an Icon in a Column Head of a JTable Component
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.