Double click callback on a cell in uitable without Java?

After google-ing for a while, I cannot find a feasible solution to realize the double click callback on a cell in uitable.
Does anyone have a better idea or workaround for this? without java or findjobj.

Antworten (1)

Walter Roberson
Walter Roberson am 7 Sep. 2015

0 Stimmen

How about CellSelectionCallback and test the figure SelectionType property for 'open' ?

3 Kommentare

Try following codes:
function test()
f = figure('Position',[200 200 400 150]);
dat = rand(3);
cnames = {'X-Data','Y-Data','Z-Data'};
rnames = {'First','Second','Third'};
t = uitable('Parent',f,'Data',dat,'ColumnName',cnames,...
'CellSelectionCallback', @cbk, ...
'RowName',rnames,'Position',[20 20 360 100]);
function cbk(~, ~)
ty = get(f, 'SelectionType')
end
end
You'll see only normal comes out from the selectiontype.
Stefanie Schwarz
Stefanie Schwarz am 2 Okt. 2020
Bearbeitet: Stefanie Schwarz am 2 Okt. 2020
In R2020a and ealier, 'SelectionType' was not honorored by UItables; starting from R2020b, the above solution should work.
Using 2021B at the moment, and above solution **mostly** works, except if one double clicks a cell that's already selected. In this case, the CellSelectionCallback is never fired at all. Curious if there's any solution for detecting a double-click in a cell that's already selected?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu App Building finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 7 Sep. 2015

Kommentiert:

am 3 Mär. 2025

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by