📄 guiexample.m
字号:
function guiexample
set(0,'Units','pixels');
Ssize = get(0,'ScreenSize'); % 获得屏幕的大小
H.gui = dialog('WindowStyle','normal',... % 设置对话框
'Resize','on',...
'Name','GUI_Example',...
'Units','pixels',...
'Position',[(Ssize(3)-500)/2 (Ssize(4)-400)/2 500 400]);
H.axes = axes('Parent',H.gui,... % 设置坐标轴
'Units','pixels',...
'Position',[30 30 380 340]);
H.Button = uicontrol('Style','pushbutton',... % 目标按钮
'Parent',H.gui,...
'Units','pixels',...
'Position',[100 100 100 60]);
DefPos = get(H.Button ,'Position'); % 目标按钮的默认位置
set(H.Button,'UserData',DefPos) % 保存目标按钮的默认位置
set(H.Button,'String',strcat(num2str(DefPos(1)),',',num2str(DefPos(2)))) % 显示目标按钮的位置坐标
H.Hslider = uicontrol('Style','slider',... % 水平slider
'Parent',H.gui,...
'Units','pixels',...
'Position',[30 375 360 20],...
'Min',30,'Max',370,...
'Value',DefPos(1),...
'Callback',{@local_Hslider,H});
H.Vslider = uicontrol('Style','slider',... % 竖直slider
'Parent',H.gui,...
'Units','pixels',...
'Position',[415 30 20 330],...
'Min',30,'Max',330,...
'Value',DefPos(2),...
'Callback',{@local_Vslider,H});
H.Default = uicontrol('Style','pushbutton',... % 默认按钮,恢复目标按钮的位置
'Parent',H.gui,...
'Units','pixels',...
'Position',[440 200 60 30],...
'String','默认',...
'Callback',{@local_Default,H});
Hm = uimenu('Parent',H.gui,'Label','File'); %菜单
uimenu('Parent',Hm,...
'Label','Default',...
'Callback',{@local_Default,H}); % 调用默认按钮
uimenu('Parent',Hm,...
'Label','Close',...
'Callback','close(gcbf)'); %关闭图形
function local_Hslider(cbo,eventdata,h) % 改变目标按钮的水平位置
SliderValue = get(cbo,'Value');
pos = get(h.Button,'Position');
set(h.Button,'Position',[SliderValue pos(2:4)])
set(h.Button,'String',strcat(num2str(SliderValue),',',num2str(pos(2)))) % 显示目标按钮的位置坐标
%--------------------------------------------------------
function local_Vslider(cbo,eventdata,h) % 改变目标按钮的竖直位置
SliderValue = get(cbo,'Value');
pos = get(h.Button,'Position');
set(h.Button,'Position',[pos(1) SliderValue pos(3:4)])
set(h.Button,'String',strcat(num2str(pos(1)),',',num2str(SliderValue))) % 显示目标按钮的位置坐标
%--------------------------------------------------------
function local_Default(cbo,eventdata,h) % 恢复目标按钮的默认位置
defpos = get(h.Button,'UserData');
set(h.Button,'Position',defpos)
set(h.Hslider,'Value',defpos(1))
set(h.Vslider,'Value',defpos(2))
set(h.Button,'String',strcat(num2str(defpos(1)),',',num2str(defpos(2)))) % 显示目标按钮的位置坐标
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -