javax.swing.JTable#getDefaultRenderer ( )源码实例Demo

下面列出了javax.swing.JTable#getDefaultRenderer ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: ghidra   文件: CompositeGhidraTableCellRenderer.java
private TableCellRenderer getCellRenderer(JTable table, int row, int column) {

		// 
		// Step 1: See if we can use our custom rendering lookup        
		// 
		if (table instanceof GTable) {
			GTable gTable = (GTable) table;
			return gTable.getCellRendererOverride(row, column);
		}

		// 
		// Step 2: Locate normal JTable-style rendering   
		//
		TableColumn tableColumn = table.getColumnModel().getColumn(column);
		TableCellRenderer renderer = tableColumn.getCellRenderer();
		if (renderer == null) {
			renderer = table.getDefaultRenderer(table.getColumnClass(column));
		}
		return renderer;
	}
 
源代码2 项目: ramus   文件: PriceEditComponent.java
@Override
public Component getTableCellRendererComponent(JTable table,
                                               Object value, boolean isSelected, boolean hasFocus, int row,
                                               int column) {
    Component component = super.getTableCellRendererComponent(table,
            value, isSelected, hasFocus, row, column);
    if (value != null) {
        if (component instanceof JLabel)
            ((JLabel) component)
                    .setText(DateAttributePlugin.DATE_INSTANCE
                            .format(value));
        else {
            TableCellRenderer renderer = table
                    .getDefaultRenderer(Date.class);
            return renderer.getTableCellRendererComponent(table, value,
                    isSelected, hasFocus, row, column);
        }
    }
    return component;
}
 
源代码3 项目: ramus   文件: DateAttributePlugin.java
@Override
public Component getTableCellRendererComponent(JTable table,
                                               Object value, boolean isSelected, boolean hasFocus, int row,
                                               int column) {
    Component component = super.getTableCellRendererComponent(table,
            value, isSelected, hasFocus, row, column);
    if (value != null) {
        if (component instanceof JLabel)
            ((JLabel) component).setText(DATE_INSTANCE.format(value));
        else {
            TableCellRenderer renderer = table
                    .getDefaultRenderer(Date.class);
            return renderer.getTableCellRendererComponent(table, value,
                    isSelected, hasFocus, row, column);
        }
    }
    return component;
}
 
源代码4 项目: jdal   文件: PropertyColorCellRender.java
@Override
public Component getTableCellRendererComponent(JTable table, Object value,
		boolean isSelected, boolean hasFocus, int row, int column) {
	
	TableCellRenderer renderer = table.getDefaultRenderer(table.getColumnClass(column));
	Component c = renderer.getTableCellRendererComponent(table, value, isSelected, hasFocus,
			row, column);

	if (!isSelected) {
		ListTableModel tableModel = (ListTableModel) table.getModel();
		Object model = tableModel.getList().get(row);
		Color color = (Color) BeanUtils.getProperty(model, colorPropertyName);
		
		if (color != null)
			c.setBackground(color);
	}
	
	return c;
}
 
源代码5 项目: netbeans   文件: DisablingCellRenderer.java
/**
 * Applies DisablingCellRenderer to all cell renderers in the table.
 * @param t the table
 * @param disabled if the table content should be disabled
 */
public static void apply(JTable t, Color background) {
    int nc = t.getColumnModel().getColumnCount();
    for (int i = 0; i < nc; i++) {
        TableCellRenderer columnRenderer = t.getColumnModel().getColumn(i).getCellRenderer();
        if (columnRenderer == null) columnRenderer = t.getDefaultRenderer(t.getColumnClass(i));
        t.getColumnModel().getColumn(i).setCellRenderer(
            new DisablingCellRenderer(columnRenderer, t, background));
    }
}
 
源代码6 项目: netbeans   文件: ClassNameList.java
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
    TableCellRenderer def = table.getDefaultRenderer(table.getColumnClass(column));
    if (!table.isEnabled()) {
        isSelected = hasFocus = false;
    }
    JComponent c = (JComponent)def.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
    c.setEnabled(table.isEnabled());
    
    return c;
}
 
源代码7 项目: netbeans   文件: DetailsTableCellRenderer.java
public Component getTableCellRendererComponent(JTable table, Object value,
                                               boolean isSelected, boolean hasFocus,
                                               int row, int column) {

    if (impl == null) impl = table.getDefaultRenderer(table.getColumnClass(column));
    
    value = formatValue(table, value, isSelected, hasFocus, row, column);
    Component c = impl.getTableCellRendererComponent(table, value, isSelected,
                                                     hasFocus, row, column);
    updateRenderer(c, table, value, isSelected, hasFocus, row, column);

    return c;
}
 
源代码8 项目: Logisim   文件: AttrTable.java
public AttrTable(Window parent) {
	super(new BorderLayout());
	this.parent = parent;

	titleEnabled = true;
	title = new TitleLabel();
	title.setHorizontalAlignment(SwingConstants.CENTER);
	title.setVerticalAlignment(SwingConstants.CENTER);
	tableModel = new TableModelAdapter(parent, NULL_ATTR_MODEL);
	table = new JTable(tableModel);
	table.setDefaultEditor(Object.class, editor);
	table.setTableHeader(null);
	table.setRowHeight(20);

	Font baseFont = title.getFont();
	int titleSize = Math.round(baseFont.getSize() * 1.2f);
	Font titleFont = baseFont.deriveFont((float) titleSize).deriveFont(Font.BOLD);
	title.setFont(titleFont);
	Color bgColor = new Color(240, 240, 240);
	setBackground(bgColor);
	table.setBackground(bgColor);
	Object renderer = table.getDefaultRenderer(String.class);
	if (renderer instanceof JComponent) {
		((JComponent) renderer).setBackground(Color.WHITE);
	}

	JScrollPane tableScroll = new JScrollPane(table);

	this.add(title, BorderLayout.PAGE_START);
	this.add(tableScroll, BorderLayout.CENTER);
	LocaleManager.addLocaleListener(this);
	localeChanged();
}
 
源代码9 项目: visualvm   文件: DetailsTableCellRenderer.java
public Component getTableCellRendererComponent(JTable table, Object value,
                                               boolean isSelected, boolean hasFocus,
                                               int row, int column) {

    if (impl == null) impl = table.getDefaultRenderer(table.getColumnClass(column));
    
    value = formatValue(table, value, isSelected, hasFocus, row, column);
    Component c = impl.getTableCellRendererComponent(table, value, isSelected,
                                                     hasFocus, row, column);
    updateRenderer(c, table, value, isSelected, hasFocus, row, column);

    return c;
}
 
源代码10 项目: visualvm   文件: ValuesCustomizer.java
public Component getTableCellRendererComponent(JTable table, Object value,
                                               boolean isSelected, boolean hasFocus,
                                               int row, int column) {

    if (impl == null) impl = table.getDefaultRenderer(table.getColumnClass(column));

    value = formatValue(table, value, isSelected, false, row, column);
    Component c = impl.getTableCellRendererComponent(table, value, isSelected,
                                                     false, row, column);
    updateRenderer(c, table, value, isSelected, false, row, column);

    return c;
}
 
源代码11 项目: visualvm   文件: DetailsTableCellRenderer.java
public Component getTableCellRendererComponent(JTable table, Object value,
                                               boolean isSelected, boolean hasFocus,
                                               int row, int column) {

    if (impl == null) impl = table.getDefaultRenderer(table.getColumnClass(column));
    
    value = formatValue(table, value, isSelected, hasFocus, row, column);
    Component c = impl.getTableCellRendererComponent(table, value, isSelected,
                                                     hasFocus, row, column);
    updateRenderer(c, table, value, isSelected, hasFocus, row, column);

    return c;
}
 
源代码12 项目: jdal   文件: AnnotationFormatTableCellRenderer.java
/**
 * {@inheritDoc}
 */
@SuppressWarnings("unchecked")
@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus,
		int row, int column) {
	
	Class<?> clazz = table.getColumnClass(column);
	if (Number.class.isAssignableFrom(clazz)) {
		TableModel tableModel = table.getModel();
		if (tableModel instanceof ListTableModel) {
			ListTableModel listTableModel = (ListTableModel) tableModel;
			Class<?> modelClass = ((ListTableModel) tableModel).getModelClass();
			String propertyName = listTableModel.getPropertyName(column);
			Printer<Object> printer = (Printer<Object>) FormatUtils.getPrinter(modelClass, propertyName);
			if (printer != null) {
				value = printer.print(value, Locale.getDefault());
				JLabel label  = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
				label.setHorizontalAlignment(JLabel.RIGHT);
				return label;
			}
		}
	}
	TableCellRenderer renderer = table.getDefaultRenderer(clazz);
	
	return renderer != null ? 
			renderer.getTableCellRendererComponent(
					table, value, isSelected, hasFocus, row, column) :
				null;
}
 
源代码13 项目: mzmine2   文件: PeakSummaryComponent.java
/**
 * @param peaksInfoList
 * @return
 */
private Dimension calculatedTableDimension(JTable peaksInfoList) {

  int numRows = peaksInfoList.getRowCount();
  int numCols = peaksInfoList.getColumnCount();
  int maxWidth = 0, compWidth, totalWidth = 0, totalHeight = 0;
  TableCellRenderer renderer = peaksInfoList.getDefaultRenderer(Object.class);
  TableCellRenderer headerRenderer = peaksInfoList.getTableHeader().getDefaultRenderer();
  TableModel model = peaksInfoList.getModel();
  Component comp;
  TableColumn column;

  for (int c = 0; c < numCols; c++) {
    for (int r = 0; r < numRows; r++) {

      if (r == 0) {
        comp = headerRenderer.getTableCellRendererComponent(peaksInfoList, model.getColumnName(c),
            false, false, r, c);
        compWidth = comp.getPreferredSize().width + 10;
        maxWidth = Math.max(maxWidth, compWidth);

      }

      comp = renderer.getTableCellRendererComponent(peaksInfoList, model.getValueAt(r, c), false,
          false, r, c);

      compWidth = comp.getPreferredSize().width + 10;
      maxWidth = Math.max(maxWidth, compWidth);

      if (c == 0) {
        totalHeight += comp.getPreferredSize().height;
      }

      // Consider max 10 rows
      if (r == 8) {
        break;
      }

    }
    totalWidth += maxWidth;
    column = peaksInfoList.getColumnModel().getColumn(c);
    column.setPreferredWidth(maxWidth);
    maxWidth = 0;
  }

  // add 30x10 px for a scrollbar
  totalWidth += 30;
  totalHeight += 10;

  comp = headerRenderer.getTableCellRendererComponent(peaksInfoList, model.getColumnName(0),
      false, false, 0, 0);
  totalHeight += comp.getPreferredSize().height;

  return new Dimension(totalWidth, totalHeight);

}
 
源代码14 项目: snap-desktop   文件: MetadataOutlineCellRenderer.java
/**
 * Highlight the non editable cells making the foreground lighter.
 */

@Override
@SuppressWarnings("unchecked")
public Component getTableCellRendererComponent(final JTable table,
                                               final Object value,
                                               final boolean isSelected,
                                               final boolean hasFocus,
                                               final int row,
                                               final int column) {
    Component cell = null;
    Object valueToDisplay = value;
    if (value instanceof Property) {
        try {
            valueToDisplay = ((Property) value).getValue();
        } catch (IllegalAccessException | InvocationTargetException ex) {
            Exceptions.printStackTrace(ex);
        }
    }
    if (valueToDisplay != null) {
        TableCellRenderer renderer = table.getDefaultRenderer(valueToDisplay.getClass());
        if (renderer != null) {
            cell = renderer.getTableCellRendererComponent(table, valueToDisplay, isSelected,
                                                          hasFocus, row, column);
        }
    } else {
        cell = super.getTableCellRendererComponent(table, valueToDisplay, isSelected, hasFocus, row, column);
    }
    if (cell != null) {
        if (cell instanceof HtmlRenderer.Renderer) {
            ((HtmlRenderer.Renderer) cell).setIndent(5);
        } else if (cell instanceof DefaultTableCellRenderer.UIResource) {
            ((UIResource) cell).setHorizontalAlignment(JLabel.LEFT);
        }
        Color foregroundColor = table.getForeground();
        cell.setForeground(foregroundColor);
        cell.setBackground(row % 2 == 0 ? Color.WHITE : VERY_LIGHT_GRAY);
        if (isSelected) {
            cell.setBackground(table.getSelectionBackground());
        }
    }
    return cell;
}
 
 方法所在类
 同类方法