gpt4 book ai didi

java - JTable - 防止用户取消选择表中的所有元素

转载 作者:行者123 更新时间:2023-12-02 10:41:51 24 4
gpt4 key购买 nike

我有一个包含固定内容的表格,我知道它永远不会为空。

我想将它用作单选按钮(宽松地说):我希望一次始终选择一行且仅选择一行。

我已经知道我可以将选择模型设置为 SINGLE_SELECTION 但(相当意外)这似乎并不能阻止用户取消选择表中的所有行。

是否有一种简单的方法可以防止用户取消选择表中的所有行?

我只能想到这样的东西:

@Override
public void valueChanged(ListSelectionEvent listSelectionEvent) {
if (!listSelectionEvent.getValueIsAdjusting() && table.getSelectedRow() == -1) {
table.selectRow(0);
}
}

但是,坦率地说,对于这样一个简单的任务来说,这似乎有点太笨拙了(而且我需要记住旧的选择才能更好地实现该模式)...

有没有更简单/更优雅的方法?

谢谢!

最佳答案

重写“changeSelection”方法,如果这是取消选择的最后一行,则不取消选择,如下所示

public void changeSelection(int rowIndex, int columnIndex, boolean toggle, boolean extend)
{
if(!(toggle && jt.getSelectedRowCount() == 1))
{
super.changeSelection(rowIndex, columnIndex, toggle, extend);
}
}

关于java - JTable - 防止用户取消选择表中的所有元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52872951/

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