axes(ax1); %指定坐标轴
picture = imread('任务图.jpg');
image(picture);
set(ax1,'Visible','off','colorOrder', [0,0,1], 'units', 'normalized', 'position', [0 0 1 1]);
f=figure(1);
set(f,'Color','k');
ax1=axes(f)
set(ax1,'Color',[0 0 0]);
set(ax1,'XColor',[0 0 0],'YColor',[0 0 0]);
set(ax1,'XTick',[],'YTick',[],'XTickLabel',[],'YTickLabel',[]);
axes(ax1); %指定坐标轴
text(2*a1(2)/5,a2(2)/3,'实验结束','Color','red','FontSize',34);
如果想要响应键盘事件,给figure添加keypressfcn或是Windowkeypressfcn的回调函数。
如果想获取当前figure下最后的按键,使用语句:get(gcf,‘currentcharacter’)
研究明白啦,原来是这样子的!
这是第一种判断方法,根据ASCII码进行判断。
参考表
32 (space) (space) 空格
13 CR (carriage return) 回车键
第二种就是比对字符,用strcmpi进行比对
这里可以比较的是CurrentKey,CurrentCharacter 这两种
感觉重点是当前!Current 啦
fig = figure;
plot(1:10)
set(fig,'windowkeypressfcn',@keypressfcn);%按键按下的回调函数
% set(fig,'windowkeyreleasefcn',@keyreleasefcn);%按键释放的回调函数
function keypressfcn(h,evt)
% if get(gcf,'CurrentCharacter')==32 %判断按下的是否是回车键
if strcmpi(get(gcf,'CurrentCharacter'),' ')
% if strcmpi(get(gcf,'CurrentKey'),'space')
fprintf('************press \n');
evt
fprintf('************ \n');
end
end
通过这个数值可以看到’Character’的属性和key

%通过按下按键,从停止位置继续运行figure;
pause(1);
while 1
pause(0.1)
if strcmpi(get(gcf,'CurrentCharacter'),'e')
break;
end
end
gcf 返回当前 Figure 对象的句柄值;
gca 返回当前 Axes 对象的句柄值;
gco 返回当前鼠标单击的句柄值,该对象可以是除 root 对象外的任意图形对象,并且 Matlab 会把当前图形对象的句柄值存放在 Figure CurrentObject 属性中。
如果设置了 axis off 命令,则不会显示坐标轴。
cla %清除坐标区
clf %清空图窗