gpt4 book ai didi

java - 当用户关闭应用程序窗口时,是否有一种优雅的方法使 JTable 停止编辑?

转载 作者:行者123 更新时间:2023-12-02 03:31:18 26 4
gpt4 key购买 nike

我试图找到一种优雅的方法,让 JTable 在用户关闭主应用程序窗口时停止单元格编辑(实际上取消它)。我知道可以使用 WindowAdapter 完成类似的操作,但为了使其正常工作,我需要对窗口的引用。问题是我有时没有它。

最佳答案

突然退出可能需要在多个级别进行处理。

  • 假设用户必须导航出表格才能单击退出控件,您应该通过设置表格的“terminateEditOnFocusLost”来获得所需的结果属性。

    table.putClientProperty("terminateEditOnFocusLost", true);
  • 如果您必须求助于 WindowListener 或类似的,您可以显式停止编辑,如下所示 here .

    CellEditor cellEditor = table.getCellEditor();
    if (cellEditor != null) {
    if (cellEditor.getCellEditorValue() != null) {
    cellEditor.stopCellEditing();
    } else {
    cellEditor.cancelCellEditing();
    }
    }
  • 由于主机拥有框架装饰,因此某些平台需要特殊处理来拦截关闭控制,如here所述。 .

  • Preferences尽最大努力坚持更新的值(value)观。

关于java - 当用户关闭应用程序窗口时,是否有一种优雅的方法使 JTable 停止编辑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25771338/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com