M文件实现GUI
来源:互联网 发布:linux 设置用户根目录 编辑:程序博客网 时间:2024/06/07 19:39
h0 = figure;
set(h0,'unit','normalized','menu','none',...
'position',[0.1 0.1 0.8 0.8],'color','default',...
'numbertitle','off','name','M file realize GUI ');
ax = axes;
set(ax,'unit','normalized','position',[0.1 0.1 0.8 0.8]);
h = uicontextmenu;
set(h0,'uicontextmenu',h);
h1 = uimenu(h,'label','函数');
h2 = uimenu(h,'label','颜色');
h3 = uimenu(h,'label','线型');
h4 = uimenu(h,'label','线宽');
h5 = uimenu(h,'label','点处图形');
h6 = uimenu(h,'label','坐标轴');
h7 = uicontrol(h0,'string','退出','callback','closereq;',...
'unit','normalized','position',[0.04 0.04 0.05 0.05]);
%%
h11 = uimenu(h1,'label','sin函数','callback',...
['x = linspace(-4*pi,4*pi,500);','y = sin(x);','l = plot(x,y);']);
h12 = uimenu(h1,'label','cos函数','callback',...
['x = linspace(-4*pi,4*pi,500);','y = cos(x);','l = plot(x,y);']);
h13 = uimenu(h1,'label','sinc函数','callback',...
['x = linspace(-4*pi,4*pi,500);','y = sinc(x);','l = plot(x,y);']);
%%
% h11 = uimenu(h1,'label','sin函数','callback',...
% ['x = linspace(-4*pi,4*pi,500);','y = sin(x);','delete(allchild(ax));',...
% 'l = line(''xdata'',x,''ydata'',y);']);
% h12 = uimenu(h1,'label','cos函数','callback',...
% ['x = linspace(-4*pi,4*pi,500);','y = cos(x);','delete(allchild(ax));',...
% 'l = line(''xdata'',x,''ydata'',y);']);
% h13 = uimenu(h1,'label','sinc函数','callback',...
% ['x = linspace(-4*pi,4*pi,500);','y = sinc(x);','delete(allchild(ax));',...
% 'l = line(''xdata'',x,''ydata'',y);']);
%%
% x = linspace(-4*pi,4*pi,500);
% h11 = uimenu(h1,'label','sin函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',x,''ydata'',sin(x));']);
% h12 = uimenu(h1,'label','cos函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',x,''ydata'',cos(x));']);
% h13 = uimenu(h1,'label','sinc函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',x,''ydata'',sinc(x));']);
%%
% h11 = uimenu(h1,'label','sin函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',linspace(-4*pi,4*pi,500),''ydata'',sin(linspace(-4*pi,4*pi,500)));']);
% h12 = uimenu(h1,'label','cos函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',linspace(-4*pi,4*pi,500),''ydata'',cos(linspace(-4*pi,4*pi,500)));']);
% h13 = uimenu(h1,'label','sinc函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',linspace(-4*pi,4*pi,500),''ydata'',sinc(linspace(-4*pi,4*pi,500)));']);
%%
h21 = uimenu(h2,'label','红色','callback','set(l,''color'',''r'');');
h22 = uimenu(h2,'label','青色','callback','set(l,''color'',''g'');');
h23 = uimenu(h2,'label','黄色','callback','set(l,''color'',''y'');');
%%
h31 = uimenu(h3,'label','实线','callback','set(l,''linestyle'',''-'');');
h32 = uimenu(h3,'label','虚线','callback','set(l,''linestyle'',''--'');');
h33 = uimenu(h3,'label','点线','callback','set(l,''linestyle'','':'');');
h34 = uimenu(h3,'label','点划线','callback','set(l,''linestyle'',''-.'');');
%%
h41 = uimenu(h4,'label','2','callback','set(l,''linewidth'',2);');
h42 = uimenu(h4,'label','4','callback','set(l,''linewidth'',4);');
h42 = uimenu(h4,'label','6','callback','set(l,''linewidth'',6);');
h42 = uimenu(h4,'label','8','callback','set(l,''linewidth'',8);');
%%
h51 = uimenu(h5,'label','五角星','callback','set(l,''marker'',''p'');');
h51 = uimenu(h5,'label','*','callback','set(l,''marker'',''*'');');
h51 = uimenu(h5,'label','叉号','callback','set(l,''marker'',''?'');');
h51 = uimenu(h5,'label','菱形','callback','set(l,''marker'',''d'');');
h51 = uimenu(h5,'label','方形','callback','set(l,''marker'',''s'');');
%%
h61 = uimenu(h6,'label','打开坐标轴','callback','axis on;');
h62 = uimenu(h6,'label','关闭坐标轴','callback','axis off;');
%% 实现不同函数图像颜色、线型、线宽的全局控制,
%第一种方法用plot函数每执行一次会将原来的图像覆盖掉,所以事先不用清除图像,
%第二种方法用line函数绘图,每执行一次会在坐标轴上添加一条线,事先应清除之前图像
%当点击sin函数时l = plot(x,y);,将plot函数绘制的对象赋予变量l,
%当点击cos函数时l = plot(x,y);,将plot函数绘制的对象赋予变量l,
%当点击sinc函数时l = plot(x,y);,将plot函数绘制的对象赋予变量l,
% ax = axis;%可以生成坐标轴
% ax = axes;%注意和下面的语句一起使用时,是ax = axes;而不是ax = axis;
% set(ax,'position',[0.1 0.1 0.8 0.8]);
% 空间保存了之前运行程序保存的变量,即使没有定义变量,运行也不会出错,但是将空间中的
%变量清楚,再次运行就会出错
%% M file realize GUI
h = figure;
set(h,'unit','normalized','menu','none',...
'position',[0.1 0.1 0.8 0.8],'color','default',...
'numbertitle','off','name','M file realize GUI ');
ax = axes;
set(ax,'unit','normalized','position',[0.1 0.1 0.8 0.8]);
h1 = uimenu(h,'label','函数');
h2 = uimenu(h,'label','颜色');
h3 = uimenu(h,'label','线型');
h4 = uimenu(h,'label','线宽');
h5 = uimenu(h,'label','点处图形');
h6 = uimenu(h,'label','坐标轴');
h7 = uicontrol(h,'string','退出','callback','closereq;',...
'unit','normalized','position',[0.04 0.04 0.05 0.05]);
%%
h11 = uimenu(h1,'label','sin函数','callback',...
['x = linspace(-4*pi,4*pi,100);','y = sin(x);','l = plot(x,y);']);
h12 = uimenu(h1,'label','cos函数','callback',...
['x = linspace(-4*pi,4*pi,100);','y = cos(x);','l = plot(x,y);']);
h13 = uimenu(h1,'label','sinc函数','callback',...
['x = linspace(-4*pi,4*pi,100);','y = sinc(x);','l = plot(x,y);']);
%%
% h11 = uimenu(h1,'label','sin函数','callback',...
% ['x = linspace(-4*pi,4*pi,500);','y = sin(x);','delete(allchild(ax));',...
% 'l = line(''xdata'',x,''ydata'',y);']);
% h12 = uimenu(h1,'label','cos函数','callback',...
% ['x = linspace(-4*pi,4*pi,500);','y = cos(x);','delete(allchild(ax));',...
% 'l = line(''xdata'',x,''ydata'',y);']);
% h13 = uimenu(h1,'label','sinc函数','callback',...
% ['x = linspace(-4*pi,4*pi,500);','y = sinc(x);','delete(allchild(ax));',...
% 'l = line(''xdata'',x,''ydata'',y);']);
%%
% x = linspace(-4*pi,4*pi,500);
% h11 = uimenu(h1,'label','sin函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',x,''ydata'',sin(x));']);
% h12 = uimenu(h1,'label','cos函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',x,''ydata'',cos(x));']);
% h13 = uimenu(h1,'label','sinc函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',x,''ydata'',sinc(x));']);
%%
% h11 = uimenu(h1,'label','sin函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',linspace(-4*pi,4*pi,500),''ydata'',sin(linspace(-4*pi,4*pi,500)));']);
% h12 = uimenu(h1,'label','cos函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',linspace(-4*pi,4*pi,500),''ydata'',cos(linspace(-4*pi,4*pi,500)));']);
% h13 = uimenu(h1,'label','sinc函数','callback',...
% ['delete(allchild(ax));','l = line(''xdata'',linspace(-4*pi,4*pi,500),''ydata'',sinc(linspace(-4*pi,4*pi,500)));']);
%%
h21 = uimenu(h2,'label','红色','callback','set(l,''color'',''r'');');
h22 = uimenu(h2,'label','青色','callback','set(l,''color'',''g'');');
h23 = uimenu(h2,'label','黄色','callback','set(l,''color'',''y'');');
%%
h31 = uimenu(h3,'label','实线','callback','set(l,''linestyle'',''-'');');
h32 = uimenu(h3,'label','虚线','callback','set(l,''linestyle'',''--'');');
h33 = uimenu(h3,'label','点线','callback','set(l,''linestyle'','':'');');
h34 = uimenu(h3,'label','点划线','callback','set(l,''linestyle'',''-.'');');
%%
h41 = uimenu(h4,'label','2','callback','set(l,''linewidth'',2);');
h42 = uimenu(h4,'label','4','callback','set(l,''linewidth'',4);');
h42 = uimenu(h4,'label','6','callback','set(l,''linewidth'',6);');
h42 = uimenu(h4,'label','8','callback','set(l,''linewidth'',8);');
%%
h51 = uimenu(h5,'label','五角星','callback','set(l,''marker'',''p'');');
h51 = uimenu(h5,'label','*','callback','set(l,''marker'',''*'');');
h51 = uimenu(h5,'label','o','callback','set(l,''marker'',''o'');');
h51 = uimenu(h5,'label','菱形','callback','set(l,''marker'',''d'');');
h51 = uimenu(h5,'label','方形','callback','set(l,''marker'',''s'');');
%%
h61 = uimenu(h6,'label','打开坐标轴','callback','axis on;');
h62 = uimenu(h6,'label','关闭坐标轴','callback','axis off;');
%% 实现不同函数图像颜色、线型、线宽的全局控制,
%第一种方法用plot函数每执行一次会将原来的图像覆盖掉,所以事先不用清除图像,
%第二种方法用line函数绘图,每执行一次会在坐标轴上添加一条线,事先应清除之前图像
%当点击sin函数时l = plot(x,y);,将plot函数绘制的对象赋予变量l,
%当点击cos函数时l = plot(x,y);,将plot函数绘制的对象赋予变量l,
%当点击sinc函数时l = plot(x,y);,将plot函数绘制的对象赋予变量l,
% ax = axis;%可以生成坐标轴
% ax = axes;%注意和下面的语句一起使用时,是ax = axes;而不是ax = axis;
% set(ax,'position',[0.1 0.1 0.8 0.8]);
% 空间保存了之前运行程序保存的变量,即使没有定义变量,运行也不会出错,但是将空间中的
%变量清除,再次运行就会出错
- M文件实现GUI
- 用M文件实现GUI菜单
- M文件实现GUI菜单结构----UImenu、UIcontextmenu、UIcontrol
- Matlab----GUI编程-登录框实现(纯m文件)
- 【matlab】----GUI编程-登录框实现(纯m文件)
- Matlab GUI 基础(2):M文件
- Matlab---GUI界面编程2(m文件纯代码实现)
- 初学GUI-教你读懂GUI的.m文件
- Java 实现 文件的复制(GUI)
- Java GUI中实现文件拷贝
- java实现gui界面的文件复制
- M文件实现GUIy右键菜单
- 实现MATLAB2016a和M文件关联
- 实现MATLAB2016a和M文件关联
- 实现python调用Matlab的.m文件
- matlab GUI 编程——mcc转换m文件到应用程序
- M文件
- 云盘+Git GUI实现云盘文件版本控制
- Python学习笔记--01、Hello World!
- 概率采样3——MCMC
- SendARP函数详解(MSDN权威)
- 2012百度实习生面试题一道,打乱100个数的顺序,越乱越好 .
- HDU 1213 How Many Tables
- M文件实现GUI
- mini2440系统移植篇之u-boot分析
- openmp4.0学习资料整理
- 结构体练习——计算输入的日期为本年度第几天
- python 获取url中的参数列表
- 第29题
- 经典算法题之Bitwise AND of Numbers Range
- servlet实现下载文件
- 数组中重复的数字