如何使 matlab-uitable CellSelectionCallback 响应同一单元格中的多次连续点击



--UPDATE--

我发现当 t.ColumnEditable = true 时,uitable 不会记录"第二次点击"。如果为真,MATLAB 会等到您亲自取消选择单元格后,才能开始注册新的点击。因此,在整个过程中,它都期望新的点击是对单元格的编辑。将 t.ColumnEditable 变为 false,连续点击注册为新操作。

--

CellSelectionCallback 似乎只记录新单元格中的点击。例如,以下内容仅在首次单击任何特定单元格期间显示"src"和"event":

close all;
f = figure('Position',[50,62,1340,326],'Units','pixels'); % set figures so they're stacked
f.Name = 'Debugging table';
t = uitable(f,'Units','normalized','Position',[.05,.05,.9,.9]);
t.CellSelectionCallback = @cellSelected;
t.ColumnName = {};
t.RowName = {};
t.Data = magic(10);
t.FontSize = 10;
t.FontName = 'AppleGothic';
function [src,event] = cellSelected(src,event)
    src
    event
end

任何人都可以提供一种分支这样的东西的方法,允许"cellSelected"中的代码在多次连续单击活动 uitable 中的单个单元格时运行?提前谢谢。

--更新--

我发现当 t.ColumnEditable = true 时,uitable 不会记录"第二次点击"。如果为真,MATLAB 会等到您亲自取消选择单元格后,才能开始注册新的点击。因此,在整个过程中,它都期望新的点击是对单元格的编辑。将 t.ColumnEditable 转换为 false,并且连续单击注册为独立触发 cellSelected 回调函数的新操作。

--

最新更新