Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 覆盖鼠标压力Handler基本选项卡UI(JTable)_Java_Swing_Jtable - Fatal编程技术网

Java 覆盖鼠标压力Handler基本选项卡UI(JTable)

Java 覆盖鼠标压力Handler基本选项卡UI(JTable),java,swing,jtable,Java,Swing,Jtable,我想调整我的JTable,这样当我开始编辑一个单元格,然后选择一系列单元格时,单元格编辑器不会消失,而是将其值更改为“当前选择” 我已经有了一个自定义的ListSelectionListener,它可以侦听选择中的更改,并从可以转换为字符串的范围对象(例如A1:C3)创建一个范围对象,但我正在寻找一种方法,以便在单元格编辑器停止/选择事件开始时进行连接,因此,我可以防止默认行为,并在选择单元格时保持编辑模式。有人有主意吗 编辑: 我走得更远了一点。在removeditor()方法中抛出错误时,我

我想调整我的
JTable
,这样当我开始编辑一个单元格,然后选择一系列单元格时,单元格编辑器不会消失,而是将其值更改为“当前选择”

我已经有了一个自定义的
ListSelectionListener
,它可以侦听选择中的更改,并从可以转换为字符串的范围对象(例如A1:C3)创建一个范围对象,但我正在寻找一种方法,以便在单元格编辑器停止/选择事件开始时进行连接,因此,我可以防止默认行为,并在选择单元格时保持编辑模式。有人有主意吗

编辑: 我走得更远了一点。在
removeditor()
方法中抛出错误时,我得到以下堆栈跟踪:

at GUI.STable.removeEditor(STable.java:71)
at javax.swing.JTable.editingStopped(JTable.java:4724)
at javax.swing.AbstractCellEditor.fireEditingStopped(AbstractCellEditor.java:141)
at javax.swing.DefaultCellEditor$EditorDelegate.stopCellEditing(DefaultCellEditor.java:368)
at javax.swing.DefaultCellEditor.stopCellEditing(DefaultCellEditor.java:233)
at GUI.STable$CustomTableCellEditor.stopCellEditing(STable.java:119)
at javax.swing.plaf.basic.BasicTableUI$Handler.mousePressed(BasicTableUI.java:1010)
这将导致
BasicTableUI
中的
mousePressed
事件,该事件确实会关闭当前编辑器:

if (table.isEditing() && !table.getCellEditor().stopCellEditing()) {
    Component editorComponent = table.getEditorComponent();
    if (editorComponent != null && !editorComponent.hasFocus()) {
        SwingUtilities2.compositeRequestFocus(editorComponent);
    }
    return;
}
但是我如何在BasicTableUI中重写这个鼠标按下的处理程序呢