如何使 matlab-uitable CellSelectionCallback 响应同一单元格中的多次连续点击?
How do I make the matlab-uitable CellSelectionCallback respond to multiple consecutive clicks in the same cell?
--更新--
我发现当 t.ColumnEditable = true 时,uitable 不会注册 'second click'。如果为真,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 不会注册 'second click'。如果为真,MATLAB 会等到您亲自取消选择单元格才开始注册新的点击。因此,在整个过程中,它都希望新的点击是对单元格的编辑。将 t.ColumnEditable 设置为 false 并且连续点击注册为独立触发 cellSelected 回调函数的新动作。
--
--更新--
我发现当 t.ColumnEditable = true 时,uitable 不会注册 'second click'。如果为真,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 不会注册 'second click'。如果为真,MATLAB 会等到您亲自取消选择单元格才开始注册新的点击。因此,在整个过程中,它都希望新的点击是对单元格的编辑。将 t.ColumnEditable 设置为 false 并且连续点击注册为独立触发 cellSelected 回调函数的新动作。
--