当前位置: 首页>>代码示例>>Java>>正文


Java TableRowSorter.setSortable方法代码示例

本文整理汇总了Java中javax.swing.table.TableRowSorter.setSortable方法的典型用法代码示例。如果您正苦于以下问题:Java TableRowSorter.setSortable方法的具体用法?Java TableRowSorter.setSortable怎么用?Java TableRowSorter.setSortable使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在javax.swing.table.TableRowSorter的用法示例。


在下文中一共展示了TableRowSorter.setSortable方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: run

import javax.swing.table.TableRowSorter; //导入方法依赖的package包/类
@Override
public void run() {
	List<Song> songs = this.getResult();
	Exception ex = this.getException();
	SongSearch search = this.getSearch();
	if (ex == null) {
		SongSearchTableModel model = null;
		if (songs != null && songs.size() > 0) {
			model = new SongSearchTableModel(search, songs);
		} else {
			model = new SongSearchTableModel();
		}
		tblSongSearchResults.setModel(model);
		// reset the scrollbar position
		scrSongSearchResults.getVerticalScrollBar().setValue(0);
		setSongSearchTableWidths();
		tblSongSearchResults.getColumnModel().getColumn(0).setCellRenderer(new SongSearchCheckTableCellRenderer(tblSongSearchResults.getDefaultRenderer(Boolean.class)));
		tblSongSearchResults.getColumnModel().getColumn(1).setCellRenderer(new SongSearchTitleTableCellRenderer());
		tblSongSearchResults.getColumnModel().getColumn(2).setCellRenderer(new SongSearchMatchTableCellRenderer(search));
		// disable sorting any column other than the title column
		// it doesn't make sense to sort the matched text or selection column
		TableRowSorter<SongSearchTableModel> sorter = new TableRowSorter<SongSearchTableModel>(model);
		sorter.setSortable(0, false);
		sorter.setSortable(2, false);
		tblSongSearchResults.setRowSorter(sorter);
	} else {
		String message = MessageFormat.format(Messages.getString("panel.song.data.search.exception.text"), search.getText());
		ExceptionDialog.show(
				SongsPanel.this, 
				Messages.getString("panel.song.data.search.exception.title"), 
				message, 
				ex);
		LOGGER.error(message, ex);
	}
}
 
开发者ID:wnbittle,项目名称:praisenter,代码行数:36,代码来源:SongsPanel.java

示例2: createControls

import javax.swing.table.TableRowSorter; //导入方法依赖的package包/类
private void createControls(final List<BaseType> baseTypes) {
  setBorder(new EmptyBorder(5, 5, 5, 5));
  final GridBagLayout gridBagLayout = new GridBagLayout();
  gridBagLayout.columnWidths = new int[] {0, 0, 0};
  gridBagLayout.rowHeights = new int[] {0, 0, 0, 0, 0};
  gridBagLayout.columnWeights = new double[] {0.0, 1.0, Double.MIN_VALUE};
  gridBagLayout.rowWeights = new double[] {0.0, 0.0, 1.0, 1.0, Double.MIN_VALUE};
  setLayout(gridBagLayout);

  final JLabel lblName = new JLabel("Name:");
  GridBagConstraints gbcLblName = new GridBagConstraints();
  gbcLblName.insets = new Insets(0, 0, 5, 5);
  gbcLblName.anchor = GridBagConstraints.WEST;
  gbcLblName.gridx = 0;
  gbcLblName.gridy = 0;
  add(lblName, gbcLblName);

  name = new JTextField();
  GridBagConstraints gbcName = new GridBagConstraints();
  gbcName.insets = new Insets(0, 0, 5, 0);
  gbcName.fill = GridBagConstraints.HORIZONTAL;
  gbcName.gridx = 1;
  gbcName.gridy = 0;
  add(name, gbcName);
  name.setColumns(10);

  final JLabel lblMembers = new JLabel("Members:");
  final GridBagConstraints gbcLblMembers = new GridBagConstraints();
  gbcLblMembers.anchor = GridBagConstraints.WEST;
  gbcLblMembers.insets = new Insets(0, 0, 5, 5);
  gbcLblMembers.gridx = 0;
  gbcLblMembers.gridy = 2;
  add(lblMembers, gbcLblMembers);

  final MemberTableModel model = new MemberTableModel();
  model.addTableModelListener(new MemberTableModelListener());
  members = new MemberTable(model, baseTypes);
  final TableRowSorter<MemberTableModel> sorter = new TableRowSorter<MemberTableModel>(model);
  // Triggers immediate re-sort when offset is updated.
  sorter.setSortsOnUpdates(true);
  sorter.setSortable(MemberTableModel.NAME_COLUMN, false);
  sorter.setSortable(MemberTableModel.TYPE_COLUMN, false);
  // Initial state is ascending sort order.
  sorter.toggleSortOrder(MemberTableModel.INDEX_COLUMN);
  members.setRowSorter(sorter);

  final GridBagConstraints gbcMembers = new GridBagConstraints();
  gbcMembers.insets = new Insets(0, 0, 5, 0);
  gbcMembers.fill = GridBagConstraints.BOTH;
  gbcMembers.gridx = 1;
  gbcMembers.gridy = 2;
  add(new JScrollPane(members), gbcMembers);

  final JLabel lblPreview = new JLabel("Preview:");
  final GridBagConstraints gbcLblPreview = new GridBagConstraints();
  gbcLblPreview.anchor = GridBagConstraints.WEST;
  gbcLblPreview.insets = new Insets(0, 0, 0, 5);
  gbcLblPreview.gridx = 0;
  gbcLblPreview.gridy = 3;
  add(lblPreview, gbcLblPreview);

  final JTextArea preview = new JTextArea();
  final GridBagConstraints gbcPreview = new GridBagConstraints();
  gbcPreview.fill = GridBagConstraints.BOTH;
  gbcPreview.gridx = 1;
  gbcPreview.gridy = 3;
  add(preview, gbcPreview);
}
 
开发者ID:google,项目名称:binnavi,代码行数:69,代码来源:ComplexTypePanel.java

示例3: sort

import javax.swing.table.TableRowSorter; //导入方法依赖的package包/类
/**
       * Toggle-sort a column
       * @param columnIndex The index of the column to be sorted
       */
@SuppressWarnings({ "unchecked", "rawtypes" })
private void sort(int columnIndex){
	// Get the default, already registered, sorter
	TableRowSorter sorter = (TableRowSorter)getTable().getRowSorter();
	// Ensure the row is sortable
	sorter.setSortable(columnIndex, true); 
	// Disable the row sorting capability to remove the native functionality
	sorter.toggleSortOrder(columnIndex);
	// Let all listeners (ui-display-related objects) know that we've sorted, so
	// please repaint()
	int rowCount = getTable().getRowCount();
	getModel().fireTableRowsUpdated(0, rowCount - 1);
	// If the column clicked doesn't match the last column that was sorted, there is
	// no need to toggle, and we'll just sort descending
	if (lastSorted != columnIndex){
		descending = true;
		lastSorted = columnIndex;
	}
	// If the direction is descending, sort descending
	if (descending){
		sorter.setSortKeys( Arrays.asList( new RowSorter.SortKey( columnIndex, SortOrder.DESCENDING ) ) );
	}
	// Otherwise, sort ascending
	else {
		sorter.setSortKeys( Arrays.asList( new RowSorter.SortKey( columnIndex, SortOrder.ASCENDING ) ) );
	}
	// Toggle the sort direction, in case we click on the chosen column again
	descending = !descending;
}
 
开发者ID:Ostrich-Emulators,项目名称:semtool,代码行数:34,代码来源:GridPlaySheet.java


注:本文中的javax.swing.table.TableRowSorter.setSortable方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。