gpt4 book ai didi

MATLAB : right click behind the window when closing a figure with a 'ButtonDownFcn'

转载 作者:太空宇宙 更新时间:2023-11-03 20:35:06 25 4
gpt4 key购买 nike

我遇到了一个具体问题,可以在下面的小脚本中进行总结。显然,它是更大项目的一部分。

此脚本(称之为“my_test.m”)打开一个图形并显示图像。设置“ButtonDownFcn”以便右键单击图像时关闭图窗

让我恼火的行为是,在图形关闭后,在图形后面的任何东西上都激活了右键单击。就好像那里从来没有人影一样。

您有什么想法可以防止这种行为并告诉操作系统忽略右键单击吗?提前致谢。

配置:

  • Matlab:R2011b - 64 位
  • Windows 7

脚本:

function my_test()
handles.f=figure;
handles.a=imshow(ones(400));
set(handles.a,'ButtonDownFcn',{@image_ButtonDownFcn});
guidata(handles.f,handles);

function image_ButtonDownFcn(hObject, eventdata)
handles=guidata(hObject);
switch lower(get(handles.f, 'selectiontype'))
case 'alt' % right click
close(handles.f);
end

最佳答案

感谢Lucius Domitius AhenobarbusRTL ,我修改了代码并且它有效。我刚刚替换了这一行:

close(handles.f);

...通过这个:

set(handles.f,'WindowButtonUpFcn','close(gcf);');

想法是使用图形的“WindowButtonUpFcn”(图像或轴没有此类回调),这样鼠标单击时不会发生任何事情,但图形会在鼠标单击释放时自行关闭。可能有更简洁的解决方案?

关于MATLAB : right click behind the window when closing a figure with a 'ButtonDownFcn' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23382657/

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