tablecellvolumeeditor.java

来自「java2 图形设计 卷II Swing」· Java 代码 · 共 38 行

JAVA
38
字号
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;

class TableCellVolumeEditor extends AbstractCellEditor {
	public TableCellVolumeEditor(
							  TableCellVolumeRenderer renderer) {
		this.renderer = renderer;

		renderer.getLabel().addMouseListener(new MouseAdapter() {
			public void mousePressed(MouseEvent e) {
				if(e.getClickCount() == 2)
					cancelCellEditing();	
			}
		});
	}
	public Component getTableCellEditorComponent(
								JTable table, Object value,
								boolean isSelected,
								int row, int column) {
		JSlider slider = renderer.getSlider();

		if(table.getSelectedRow() != row)
			table.setRowSelectionInterval(row,row);

		slider.setValue(((Integer)value).intValue());
		return renderer;
	}
	public boolean stopCellEditing() {
		JSlider slider = renderer.getSlider();

		setCellEditorValue(new Integer(slider.getValue()));

		return super.stopCellEditing();
	}
}

⌨️ 快捷键说明

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