How can I execute a double-click callback without executing the single-click callback in my MATLAB GUI?
조회 수: 47 (최근 30일)
이전 댓글 표시
In order to set a double-click callback for my figure, I must set the SelectionType property to "open." However, when I double-click on my figure, MATLAB cycles the SelectionType through "normal" while I am clicking. This triggers my single-click callback. Thus both callbacks are executed instead of only my double-click callback.
채택된 답변
MathWorks Support Team
2011년 12월 5일
You can use the following sample code to cause your application to execute only the double-click callback:
Associate this function with 'WindowButtonDownFcn' callback of the figure window.
function clickcallback(obj,evt)
persistent chk
if isempty(chk)
chk = 1;
pause(0.5); %Add a delay to distinguish single click from a double click
if chk == 1
fprintf(1,'\nI am doing a single-click.\n\n');
chk = [];
end
else
chk = [];
fprintf(1,'\nI am doing a double-click.\n\n');
end
댓글 수: 0
추가 답변 (1개)
CAM
2015년 3월 26일
I am disappointed that GUI's do not (apparently) support the double-click option in SelectionType. Why is there no disclaimer in the help files about this?
When will this bug be fixed?
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Migrate GUIDE Apps에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!