jtableheader.java

来自「linux下建立JAVA虚拟机的源码KAFFE」· Java 代码 · 共 775 行 · 第 1/2 页

JAVA
775
字号
  /**   * Creates a default table column model.   *    * @return A default table column model.   */  protected TableColumnModel createDefaultColumnModel()  {    return new DefaultTableColumnModel();  }  /**   * Get the value of the {@link #accessibleContext} property.   *   * @return The current value of the property   */  public AccessibleContext getAccessibleContext()  {    return accessibleContext;  }  /**   * Get the value of the {@link #columnModel} property.   *   * @return The current value of the property   */  public TableColumnModel getColumnModel()  {    return columnModel;  }  /**   * Get the column that is currently being dragged. This is used when   * handling the column reordering with mouse.   *   * @return the column being dragged, null if none.   */  public TableColumn getDraggedColumn()  {    return draggedColumn;  }  /**   * Get the value of the {@link #draggedDistance} property.   *   * @return The current value of the property   */  public int getDraggedDistance()  {    return draggedDistance;  }  /**   * Check if it is possible to reorder the table columns by dragging column   * header with mouse. The table reordering is enabled by default, but can be   * disabled with {@link #setReorderingAllowed(boolean)}.   *   * @return true if reordering is allowed, false otherwise.   */   public boolean getReorderingAllowed()  {    return reorderingAllowed;  }  /**   * Check if it is possible to resize the table columns by dragging the column   * boundary in the table header with mouse. The resizing is enabled   * by default, but can be disabled with {@link #setResizingAllowed(boolean)}.   *   * @return true if resizing is allowed, false otherwise.   */   public boolean getResizingAllowed()  {    return resizingAllowed;  }  /**   * Get the column that is currently being resized. This is used when   * handling the column resizing with mouse.   *   * @return the column being currently resized, null if none.   */  public TableColumn getResizingColumn()  {    return resizingColumn;  }  /**   * Get the table, having this header.   *   * @return the table, having this header.   */  public JTable getTable()  {    return table;  }  /**   * Get the value of the {@link #updateTableInRealTime} property.   *   * @return The current value of the property   */  public boolean getUpdateTableInRealTime()  {    return updateTableInRealTime;  }  /**   * Get the value of the {@link #opaque} property.   *   * @return The current value of the property   */  public boolean isOpaque()  {    return opaque;  }  /**   * Set the value of the {@link #columnModel} property.   *   * @param c The new value of the property   */   public void setColumnModel(TableColumnModel c)  {    columnModel.removeColumnModelListener(this);    columnModel = c;    columnModel.addColumnModelListener(this);  }  /**   * Set the column that is currently being dragged. This is used when   * dragging the column with mouse. Setting to null will stop the    * dragging session immediately.   *   * @param draggingIt the column being currently dragged, null if none.   */   public void setDraggedColumn(TableColumn draggingIt)  {    draggedColumn = draggingIt;  }  /**   * Set the value of the {@link #draggedDistance} property.   *   * @param d The new value of the property   */   public void setDraggedDistance(int d)  {    draggedDistance = d;  }  /**   * Set the value of the {@link #opaque} property.   *   * @param o The new value of the property   */   public void setOpaque(boolean o)  {    opaque = o;  }  /**   * Set the table ability to reorder columns by dragging column header   * with mouse. The table reordering is enabled by default, but can be   * disabled with this method.   *   * @param allowed true if reordering is allowed, false otherwise.   */   public void setReorderingAllowed(boolean allowed)  {    reorderingAllowed = allowed;  }  /**   * Set the table ability to resize columns by dragging the column   * boundary in the table header with mouse. The resizing is enabled   * by default, but can be disabled using this method.   *   * @param allowed true if resizing is allowed, false otherwise.   */   public void setResizingAllowed(boolean allowed)  {    resizingAllowed = allowed;  }  /**   * The the column that is currently being resized. This property is used   * when handling table resizing with mouse. Setting to null would stop   * the resizing session immediately.   *   * @param resizingIt the column being currently resized   */   public void setResizingColumn(TableColumn resizingIt)  {    resizingColumn = resizingIt;  }  /**   * Set the value of the {@link #table} property.   *   * @param t The new value of the property   */   public void setTable(JTable t)  {    table = t;  }  /**   * Set the value of the {@link #updateTableInRealTime} property.   *   * @param u The new value of the property   */   public void setUpdateTableInRealTime(boolean u)  {    updateTableInRealTime = u;  }  /**   * Creates a default renderer.   *    * @return A default renderer.   */  protected TableCellRenderer createDefaultRenderer()  {    return new DefaultTableCellRenderer();  }    /**   * Returns the default table cell renderer.   *    * @return The default table cell renderer.   */  public TableCellRenderer getDefaultRenderer()  {    return cellRenderer;  }  /**   * Sets the default table cell renderer.   *    * @param cellRenderer  the renderer.   */  public void setDefaultRenderer(TableCellRenderer cellRenderer)  {    this.cellRenderer = cellRenderer;  }    /**   * Get the rectangle, occupied by the header of the given column.   *    * @param column the column, for that the header area is requested.   *    * @return the column header area.   */  public Rectangle getHeaderRect(int column)  {    Rectangle r = getTable().getCellRect(-1, column, false);    r.height = getHeight();    return r;  }  protected String paramString()  {    return "JTableHeader";  }  // UI support  public String getUIClassID()  {    return "TableHeaderUI";  }  public TableHeaderUI getUI()  {    return (TableHeaderUI) ui;  }  public void setUI(TableHeaderUI u)  {    super.setUI(u);  }  public void updateUI()  {    setUI((TableHeaderUI) UIManager.getUI(this));  }  /**   * Returns the index of the column at the specified point.   *    * @param point  the point.   *    * @return The column index, or -1.   */  public int columnAtPoint(Point point)  {    if (getBounds().contains(point))      return columnModel.getColumnIndexAtX(point.x);        return -1;  }  /**   * Receives notification when a column is added to the column model.   *   * @param event the table column model event   */  public void columnAdded(TableColumnModelEvent event)  {    // TODO: What else to do here (if anything)?    resizeAndRepaint();  }  /**   * Receives notification when a column margin changes in the column model.   *   * @param event the table column model event   */  public void columnMarginChanged(ChangeEvent event)  {    // TODO: What else to do here (if anything)?    resizeAndRepaint();  }  /**   * Receives notification when a column is moved within the column model.   *   * @param event the table column model event   */  public void columnMoved(TableColumnModelEvent event)  {    // TODO: What else to do here (if anything)?    resizeAndRepaint();  }  /**   * Receives notification when a column is removed from the column model.   *   * @param event the table column model event   */  public void columnRemoved(TableColumnModelEvent event)  {    // TODO: What else to do here (if anything)?    resizeAndRepaint();  }  /**   * Receives notification when the column selection has changed.   *   * @param event the table column model event   */  public void columnSelectionChanged(ListSelectionEvent event)  {    // TODO: What else to do here (if anything)?    resizeAndRepaint();  }  /**   * Validates the layout of this table header and repaints it. This is   * equivalent to <code>revalidate()</code> followed by   * <code>repaint()</code>.   */  public void resizeAndRepaint()  {    revalidate();    repaint();  }  /**   * Initializes the fields and properties of this class with default values.   * This is called by the constructors.   */  protected void initializeLocalVars()  {    accessibleContext = new AccessibleJTableHeader();    draggedColumn = null;    draggedDistance = 0;    opaque = true;    reorderingAllowed = true;    resizingAllowed = true;    resizingColumn = null;    table = null;    updateTableInRealTime = true;    cellRenderer = createDefaultRenderer();  }}

⌨️ 快捷键说明

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