javax.swing.table.TableColumn#setResizable ( )源码实例Demo

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

源代码1 项目: pentaho-reporting   文件: TableEditor.java
public void addColumn( final TableColumn column ) {
  stopEditing();
  if ( column.getHeaderValue() == null ) {
    final int modelColumn = column.getModelIndex();
    final String columnName = getModel().getColumnName( modelColumn );
    if ( modelColumn == 0 ) {
      column.setResizable( false );
      column.setHeaderValue( columnName );
      column.setPreferredWidth( 30 );
      column.setMaxWidth( 30 );
      column.setMinWidth( 30 );
    } else {
      final Class columnType = getModel().getColumnClass( modelColumn );
      column.setHeaderValue( new TypedHeaderInformation( columnType, columnName ) );
    }
  }
  getColumnModel().addColumn( column );

}
 
源代码2 项目: snap-desktop   文件: ModuleSuiteDialog.java
private JTable createAdaptersTable() {
    java.util.List<ToolAdapterOperatorDescriptor> toolboxSpis = new ArrayList<>();
    toolboxSpis.addAll(ToolAdapterRegistry.INSTANCE.getOperatorMap().values()
            .stream()
            .map(e -> (ToolAdapterOperatorDescriptor) e.getOperatorDescriptor())
            .collect(Collectors.toList()));
    toolboxSpis.sort(Comparator.comparing(ToolAdapterOperatorDescriptor::getAlias));
    AdapterListModel model = new AdapterListModel(toolboxSpis);
    operatorsTable = new JTable(model);
    operatorsTable.getSelectionModel().addListSelectionListener(e -> onSelectionChanged());
    TableColumn checkColumn = operatorsTable.getColumnModel().getColumn(0);
    int checkColumnWidth = 24;
    checkColumn.setMaxWidth(checkColumnWidth);
    checkColumn.setPreferredWidth(checkColumnWidth);
    checkColumn.setResizable(false);
    TableColumn aliasColumn = operatorsTable.getColumnModel().getColumn(1);
    aliasColumn.setPreferredWidth(10 * checkColumnWidth);
    return operatorsTable;
}
 
源代码3 项目: osp   文件: GridDataTable.java
/**
 * Constructor GridDataTable
 * @param griddata
 * @param component
 */
public GridDataTable(GridData griddata, int component) {
  super();
  refreshTimer.setRepeats(false);
  refreshTimer.setCoalesce(true);
  tableModel = new GridTableModel(griddata, component);
  setModel(tableModel);
  setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
  String name = getColumnName(0);
  TableColumn column = getColumn(name);
  int width = 20;
  column.setMinWidth(width);
  column.setResizable(true);
  // column.setMaxWidth(width);
  column.setWidth(width);
  width = 60;
  for(int i = 1, n = getColumnCount(); i<n; i++) {
    name = getColumnName(i);
    column = getColumn(name);
    column.setMinWidth(width);
    column.setWidth(width);
    column.setResizable(true);
  }
  sizeColumnsToFit(0);
}
 
源代码4 项目: pcgen   文件: EquipmentModel.java
public static void initializeTreeTable(JTreeTable treeTable)
{
	treeTable.getTree().setRowHeight(0);
	treeTable.setFocusable(false);
	treeTable.getTree().putClientProperty("JTree.lineStyle", "Horizontal");
	normFont = treeTable.getFont();
	headerFont = FontManipulation.title(normFont);
	biggerFont = FontManipulation.title(FontManipulation.xxlarge(normFont));
	lessFont = FontManipulation.less(normFont);
	treeTable.setAutoCreateColumnsFromModel(false);
	{
		DefaultTableColumnModel model = new DefaultTableColumnModel();
		CellRenderer renderer = new CellRenderer();
		TableColumn column = new TableColumn(0);
		column.setResizable(true);
		model.addColumn(column);
		model.addColumn(createFixedColumn(1, 75, renderer));
		model.addColumn(createFixedColumn(2, 75, renderer));
		model.addColumn(createFixedColumn(3, 50, renderer));
		model.addColumn(createFixedColumn(4, 50, renderer));
		treeTable.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS);
		treeTable.setColumnModel(model);
		treeTable.getTableHeader().setResizingAllowed(false);
	}
	treeTable.setTreeCellRenderer(new TreeRenderer());
}
 
源代码5 项目: pcgen   文件: Utilities.java
public static TableColumn createTableColumn(int index, String headerValue, TableCellRenderer headerRenderer,
	boolean resizable)
{
	TableColumn column = new TableColumn(index);
	if (headerValue.startsWith("in_"))
	{
		column.setHeaderValue(LanguageBundle.getString(headerValue));
	}
	else
	{
		column.setHeaderValue(headerValue);
	}
	column.setHeaderRenderer(headerRenderer);
	if (!resizable)
	{
		column.sizeWidthToFit();
		column.setMaxWidth(column.getMaxWidth() + 10);
		column.setPreferredWidth(column.getPreferredWidth() + 10);
	}
	column.setResizable(resizable);
	return column;
}
 
源代码6 项目: java-swing-tips   文件: MainPanel.java
private MainPanel() {
  super(new BorderLayout());
  table.setRowSorter(new TableRowSorter<>(model));

  JScrollPane scrollPane = new JScrollPane(table);
  scrollPane.getViewport().setBackground(Color.WHITE);
  table.setComponentPopupMenu(new TablePopupMenu());
  table.setFillsViewportHeight(true);
  table.setIntercellSpacing(new Dimension());
  table.setShowGrid(false);
  table.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE);

  TableColumn column = table.getColumnModel().getColumn(0);
  column.setMaxWidth(60);
  column.setMinWidth(60);
  column.setResizable(false);

  JButton button = new JButton("add");
  button.addActionListener(e -> addActionPerformed());
  add(button, BorderLayout.SOUTH);
  add(scrollPane);
  setPreferredSize(new Dimension(320, 240));
}
 
源代码7 项目: ghidra   文件: MemoryMapProvider.java
/**
	 * Set up the table so it looks well arranged.
	 */
	private void arrangeTable() {
		// memTable.setRowHeight(20);
		TableColumn column;

		column = memTable.getColumn(MemoryMapModel.READ_COL);
		column.setMaxWidth(25);
		column.setMinWidth(25);
		column.setResizable(false);

		column = memTable.getColumn(MemoryMapModel.WRITE_COL);
		column.setMaxWidth(25);
		column.setMinWidth(25);
		column.setResizable(false);

		column = memTable.getColumn(MemoryMapModel.EXECUTE_COL);
		column.setMaxWidth(25);
		column.setMinWidth(25);
		column.setResizable(false);

		column = memTable.getColumn(MemoryMapModel.VOLATILE_COL);
		column.setMaxWidth(57);
		column.setMinWidth(57);
		column.setResizable(false);

		column = memTable.getColumn(MemoryMapModel.OVERLAY_COL);
		column.setMaxWidth(55);
		column.setMinWidth(55);
		column.setResizable(false);

		column = memTable.getColumn(MemoryMapModel.BLOCK_TYPE_COL);
		column.setMinWidth(60);
//		column.setResizable(true);

		column = memTable.getColumn(MemoryMapModel.INIT_COL);
		column.setMaxWidth(68);
		column.setMinWidth(68);
		column.setResizable(false);
	}
 
源代码8 项目: netbeans   文件: EncapsulateFieldPanel.java
private void setColumnWidth(int columnIndex) {
    TableColumn col = jTableFields.getColumnModel().getColumn(columnIndex);
    JCheckBox box = new JCheckBox();
    int width = (int) box.getPreferredSize().getWidth();
    col.setPreferredWidth(width);
    col.setMinWidth(width);
    col.setMaxWidth(width);
    col.setResizable(false);        
}
 
源代码9 项目: consulo   文件: TableUtil.java
public static void setupCheckboxColumn(@Nonnull TableColumn column) {
  int checkboxWidth = new JCheckBox().getPreferredSize().width;
  column.setResizable(false);
  column.setPreferredWidth(checkboxWidth);
  column.setMaxWidth(checkboxWidth);
  column.setMinWidth(checkboxWidth);
}
 
源代码10 项目: keystore-explorer   文件: KseFrame.java
private void setColumnsToIconSize(JTable keyStoreTable, int... columnNumbers) {
	for (int i : columnNumbers) {
		TableColumn typeCol = keyStoreTable.getColumnModel().getColumn(i);
		typeCol.setResizable(false);
		typeCol.setMinWidth(ICON_SIZE);
		typeCol.setMaxWidth(ICON_SIZE);
		typeCol.setPreferredWidth(ICON_SIZE);
	}
}
 
源代码11 项目: java-swing-tips   文件: MainPanel.java
private MainPanel() {
  super(new BorderLayout());
  table.setRowSorter(new TableRowSorter<>(model));
  addProgressValue("Name 1", 100, null);
  ExecutorService executor = Executors.newSingleThreadExecutor();

  JScrollPane scrollPane = new JScrollPane(table);
  scrollPane.getViewport().setBackground(Color.WHITE);
  table.setComponentPopupMenu(new TablePopupMenu(executor));
  table.setFillsViewportHeight(true);
  table.setIntercellSpacing(new Dimension());
  table.setShowGrid(false);
  table.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE);

  TableColumn column = table.getColumnModel().getColumn(0);
  column.setMaxWidth(60);
  column.setMinWidth(60);
  column.setResizable(false);

  addHierarchyListener(e -> {
    if ((e.getChangeFlags() & HierarchyEvent.DISPLAYABILITY_CHANGED) != 0 && !e.getComponent().isDisplayable()) {
      executor.shutdownNow();
    }
  });

  JButton button = new JButton("add");
  button.addActionListener(e -> addActionPerformed(executor));
  add(button, BorderLayout.SOUTH);
  add(scrollPane);
  setPreferredSize(new Dimension(320, 240));
}
 
源代码12 项目: java-swing-tips   文件: MainPanel.java
private MainPanel() {
  super(new BorderLayout());
  UIManager.put("ComboBox.buttonDarkShadow", UIManager.getColor("TextField.foreground"));

  String[] comboModel = {"Name 0", "Name 1", "Name 2"};
  String[] columnNames = {"Integer", "String", "Boolean"};
  Object[][] data = {
    {12, comboModel[0], true}, {5, comboModel[2], false},
    {92, comboModel[1], true}, {3, comboModel[0], false}
  };
  TableModel model = new DefaultTableModel(data, columnNames) {
    @Override public Class<?> getColumnClass(int column) {
      return getValueAt(0, column).getClass();
    }
  };
  JTable table = new JTable(model);
  TableColumn col = table.getColumnModel().getColumn(0);
  col.setMinWidth(60);
  col.setMaxWidth(60);
  col.setResizable(false);

  col = table.getColumnModel().getColumn(1);
  col.setCellEditor(new DefaultCellEditor(makeComboBox(new DefaultComboBoxModel<>(comboModel))));
  // table.setDefaultEditor(JComboBox.class, new DefaultCellEditor(combo));

  table.setAutoCreateRowSorter(true);
  add(new JScrollPane(table));
  setPreferredSize(new Dimension(320, 240));
}
 
源代码13 项目: desktop   文件: PluginsPanel.java
private void initTable() {
    // Content Model & Renderer
    tblPlugins.setModel(new PluginsTableModel());
    //tblFolders.getC

    // Columns
    tblPlugins.setAutoResizeMode(JTable.AUTO_RESIZE_LAST_COLUMN);

    TableColumn colActive = tblPlugins.getColumnModel().getColumn(PluginsTableModel.COLUMN_INDEX_ACTIVE);
    colActive.setPreferredWidth(50);
    colActive.setMaxWidth(50);
    colActive.setResizable(false);

    TableColumn colRemote = tblPlugins.getColumnModel().getColumn(PluginsTableModel.COLUMN_INDEX_NAME);
    colRemote.setPreferredWidth(210);

    TableColumn colLocal = tblPlugins.getColumnModel().getColumn(PluginsTableModel.COLUMN_INDEX_VERSION);
    colLocal.setPreferredWidth(120);

    // Other stuff
    tblPlugins.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    tblPlugins.setShowHorizontalLines(false);
    tblPlugins.setShowVerticalLines(false);
    tblPlugins.setBorder(BorderFactory.createEmptyBorder());

    // Listeners
    tblPlugins.getSelectionModel().addListSelectionListener(new ListSelectionListener() {

        @Override
        public void valueChanged(ListSelectionEvent e) {
            btnDelete.setEnabled(e.getFirstIndex() >= 0);
        }
    });
}
 
源代码14 项目: consulo   文件: ClasspathPanelImpl.java
private void setFixedColumnWidth(final int columnIndex, final String textToMeasure) {
  final TableColumn column = myEntryTable.getTableHeader().getColumnModel().getColumn(columnIndex);
  column.setResizable(false);
  column.setMaxWidth(column.getPreferredWidth());
}
 
源代码15 项目: java-swing-tips   文件: MainPanel.java
private MainPanel() {
  super(new GridBagLayout());

  String[] columnNames = {"A", "B", "C", "D", "E", "F", "G", "H", "I"};
  Boolean[][] data = {
    {true, false, true, false, true, true, false, true, true},
    {true, false, true, false, true, true, false, true, true},
    {true, false, true, false, true, true, false, true, true},
    {true, false, true, false, true, true, false, true, true},
    {true, false, true, false, true, true, false, true, true},
    {true, false, true, false, true, true, false, true, true},
    {true, false, true, false, true, true, false, true, true},
    {true, false, true, false, true, true, false, true, true},
    {true, false, true, false, true, true, false, true, true}
  };

  TableModel model = new DefaultTableModel(data, columnNames) {
    @Override public Class<?> getColumnClass(int column) {
      return Boolean.class;
    }
  };

  JTable table = new JTable(model) {
    @Override public void updateUI() {
      setDefaultEditor(Boolean.class, null);
      super.updateUI();
      setDefaultEditor(Boolean.class, new BooleanEditor());
    }

    @Override public Dimension getPreferredScrollableViewportSize() {
      return super.getPreferredSize();
    }
  };

  table.setCellSelectionEnabled(true);
  table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
  table.setAutoCreateRowSorter(true);
  table.setComponentPopupMenu(new TablePopupMenu());

  TableColumnModel m = table.getColumnModel();
  for (int i = 0; i < m.getColumnCount(); i++) {
    TableColumn col = m.getColumn(i);
    col.setPreferredWidth(CELLSIZE);
    col.setResizable(false);
  }

  JScrollPane scroll = new JScrollPane(table);
  scroll.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER);
  scroll.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);

  add(scroll);
  setPreferredSize(new Dimension(320, 240));
}
 
源代码16 项目: java-swing-tips   文件: MainPanel.java
private MainPanel() {
  super(new BorderLayout());

  RowDataModel model = new RowDataModel();
  model.addRowData(new RowData("Name 1", "Comment..."));
  model.addRowData(new RowData("Name 2", "Test"));
  model.addRowData(new RowData("Name d", "ee"));
  model.addRowData(new RowData("Name c", "Test cc"));
  model.addRowData(new RowData("Name b", "Test bb"));
  model.addRowData(new RowData("Name a", "ff"));
  model.addRowData(new RowData("Name 0", "Test aa"));
  model.addRowData(new RowData("Name 0", "gg"));

  JTable table = new JTable(model) {
    @Override public void updateUI() {
      super.updateUI();
      TableColumn col = getColumnModel().getColumn(0);
      col.setMinWidth(60);
      col.setMaxWidth(60);
      col.setResizable(false);

      col = getColumnModel().getColumn(BUTTON_COLUMN);
      col.setCellRenderer(new DeleteButtonRenderer());
      col.setCellEditor(new DeleteButtonEditor());
      col.setMinWidth(20);
      col.setMaxWidth(20);
      col.setResizable(false);
    }
    // @Override public int rowAtPoint(Point pt) {
    //   // [JDK-6291631] JTable: rowAtPoint returns 0 for negative y - Java Bug System
    //   // https://bugs.openjdk.java.net/browse/JDK-6291631
    //   return pt.y < 0 ? -1 : super.rowAtPoint(pt);
    // }
  };

  TableRowSorter<? extends TableModel> sorter = new TableRowSorter<>(model);
  table.setRowSorter(sorter);
  sorter.setSortable(BUTTON_COLUMN, false);

  JButton button = new JButton("add");
  button.addActionListener(e -> model.addRowData(new RowData("Test", "aaaaaaaaaaa")));

  add(button, BorderLayout.SOUTH);
  add(new JScrollPane(table));
  setPreferredSize(new Dimension(320, 240));
}
 
源代码17 项目: java-swing-tips   文件: MainPanel.java
private MainPanel() {
  super(new BorderLayout());
  String[] columnNames = {"String", "Integer", "Boolean"};
  Object[][] data = {
      {"aaa", 12, true}, {"bbb", 5, false},
      {"CCC", 92, true}, {"DDD", 0, false}
  };
  TableModel model = new DefaultTableModel(data, columnNames) {
    @Override public Class<?> getColumnClass(int column) {
      // ArrayIndexOutOfBoundsException: 0 >= 0
      // [JDK-6967479] JTable sorter fires even if the model is empty - Java Bug System
      // https://bugs.openjdk.java.net/browse/JDK-6967479
      // return getValueAt(0, column).getClass();
      switch (column) {
        case 0: return String.class;
        case 1: return Number.class;
        case 2: return Boolean.class;
        default: return super.getColumnClass(column);
      }
    }
  };
  JTable table = new JTable(model);
  table.setAutoCreateRowSorter(true);
  table.setRowSelectionAllowed(true);
  table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);

  TableColumn col = table.getColumnModel().getColumn(0);
  col.setMinWidth(60);
  col.setMaxWidth(60);
  col.setResizable(false);

  JScrollPane scroll = new JScrollPane(table);
  scroll.setComponentPopupMenu(new TablePopupMenu());
  // scroll.getViewport().setInheritsPopupMenu(true); // 1.5.0
  table.setInheritsPopupMenu(true);
  // table.setFillsViewportHeight(true);

  scroll.getViewport().setOpaque(true);
  // scroll.getViewport().setBackground(Color.WHITE);

  JCheckBox check = new JCheckBox("viewport setOpaque", true);
  check.addActionListener(e -> {
    scroll.getViewport().setOpaque(((JCheckBox) e.getSource()).isSelected());
    scroll.repaint();
  });

  JButton button = new JButton("Choose background color");
  button.addActionListener(e -> {
    Color color = JColorChooser.showDialog(getRootPane(), "background color", scroll.getViewport().getBackground());
    scroll.getViewport().setBackground(color);
    scroll.repaint();
  });

  JPanel pnl = new JPanel();
  pnl.add(check);
  pnl.add(button);

  add(scroll);
  add(pnl, BorderLayout.SOUTH);
  setPreferredSize(new Dimension(320, 240));
}
 
源代码18 项目: java-swing-tips   文件: MainPanel.java
private MainPanel() {
  super(new BorderLayout());

  String[] columnNames = {"Integer", "String", "Boolean"};
  Object[][] data = {
    {12, "aaa", true}, {5, "bbb", false},
    {92, "CCC", true}, {0, "DDD", false}
  };
  TableModel model = new DefaultTableModel(data, columnNames) {
    @Override public Class<?> getColumnClass(int column) {
      return getValueAt(0, column).getClass();
    }
  };
  // JTable table = new JTable(model) {
  //   @Override public Component prepareRenderer(TableCellRenderer tcr, int row, int column) {
  //     Component c = super.prepareRenderer(tcr, row, column);
  //     if (1 == convertColumnIndexToModel(column)) {
  //       initLabel((JLabel) c, row);
  //     } else {
  //       ((JLabel) c).setHorizontalAlignment(SwingConstants.RIGHT);
  //     }
  //     return c;
  //   }
  // };
  JTable table = new JTable(model);
  table.setAutoCreateRowSorter(true);

  TableColumn col = table.getColumnModel().getColumn(0);
  col.setMinWidth(60);
  col.setMaxWidth(60);
  col.setResizable(false);

  col = table.getColumnModel().getColumn(1);
  col.setCellRenderer(new HorizontalAlignmentTableRenderer());

  col = table.getColumnModel().getColumn(2);
  col.setHeaderRenderer(new HeaderRenderer());

  ButtonGroup bg = new ButtonGroup();
  JPanel p = new JPanel();
  Stream.of(leftRadio, centerRadio, rightRadio, customRadio).forEach(rb -> {
    bg.add(rb);
    p.add(rb);
    rb.addActionListener(e -> table.repaint());
  });

  add(p, BorderLayout.NORTH);
  add(new JScrollPane(table));
  setPreferredSize(new Dimension(320, 240));
}
 
源代码19 项目: pega-tracerviewer   文件: TraceTableModel.java
@Override
protected TableColumnModel getTableColumnModel() {

    TableColumnModel tableColumnModel = new DefaultTableColumnModel();

    for (int i = 0; i < getColumnCount(); i++) {

        TableColumn tableColumn = new TableColumn(i);

        String text = getColumnName(i);

        tableColumn.setHeaderValue(text);

        TraceTableModelColumn ttmc = getColumn(i);

        TraceTableCellRenderer ttcr = new TraceTableCellRenderer();
        ttcr.setBorder(new EmptyBorder(1, 3, 1, 1));
        ttcr.setHorizontalAlignment(ttmc.getHorizontalAlignment());

        tableColumn.setCellRenderer(ttcr);

        int colWidth = ttmc.getPrefColumnWidth();
        tableColumn.setPreferredWidth(colWidth);
        // tableColumn.setMinWidth(colWidth);
        tableColumn.setWidth(colWidth);
        tableColumn.setResizable(true);

        tableColumnModel.addColumn(tableColumn);
    }

    return tableColumnModel;
}
 
源代码20 项目: pega-tracerviewer   文件: TraceTreeTable.java
@Override
protected void setTreeTableColumnModel() {

    TreeTableModelAdapter model = (TreeTableModelAdapter) getModel();
    TableColumnModel tableColumnModel = new DefaultTableColumnModel();

    for (int i = 0; i < model.getColumnCount(); i++) {

        TableColumn tableColumn = new TableColumn(i);

        TreeTableColumn treeTableColumn = model.getColumn(i);

        String text = treeTableColumn.getDisplayName();

        Class<?> columnClass = treeTableColumn.getColumnClass();

        int preferredWidth = treeTableColumn.getPrefColumnWidth();

        tableColumn.setHeaderValue(text);
        tableColumn.setPreferredWidth(preferredWidth);

        TableCellRenderer tcr = null;

        if (TreeTableColumn.TREE_COLUMN_CLASS.equals(columnClass)) {

            DefaultTreeTableTree treeTableTree = getTree();
            tcr = treeTableTree;
            tableColumn.setCellEditor(new TreeTableCellEditor(treeTableTree));
        } else {

            TraceTreeTableCellRenderer ltcr = new TraceTreeTableCellRenderer();
            ltcr.setBorder(new EmptyBorder(1, 3, 1, 1));
            ltcr.setHorizontalAlignment(treeTableColumn.getHorizontalAlignment());

            tableColumn.setCellEditor(new TreeTableCellEditor(ltcr));

            tcr = ltcr;
        }

        tableColumn.setCellRenderer(tcr);

        tableColumn.setResizable(true);

        tableColumnModel.addColumn(tableColumn);
    }

    setColumnModel(tableColumnModel);
}