在GUI 的设计中,数据的直接输入有两种方式:edit 和 slider,他们之间经常需要同步,即表示同一个变量的 string值或者value值,当edit改变时,slider 跟着改变;同样当slider改变时,edit 也随着改变,并实时显示在 table 中。

1、根据GUIDE 建立GUI。打开GUI,在空白区域放置三个 uicontrol :slider、edit、table,如图所示。为了编辑的方便,把他们放在一个 panel 上。
三个控件的tag 分别是:slider1、edit1、UItable1;其中slider 的 属性中,Max:100,Min:-100;edit 的 string 值设为:num;
table 的data 中,设置 行、列的显示名。

2、编辑 M 文件。打开对应的M文件,可以看到系统自动生成了四个函数框架:slider1_Callback、slider1_CreateFcn、edit1_Callback、edit1_CreateFcnslider1\_Callback、slider1\_CreateFcn、edit1\_Callback、edit1\_CreateFcn ,在 slider1_Callbackslider1\_Callback 中添加代码

global a;set(handles.edit1,'string',num2str(get(hObject,'value')));a=str2num(get(handles.edit1,'string'));set(handles.uitable1,'data',[a,2*a]);

在edit1_Callbackedit1\_Callback中添加代码:

global a;
set(handles.slider1,'value',str2num(get(hObject,'string')));
a=str2num(get(handles.edit1,'string'));
set(handles.uitable1,'data',[a,2*a]);

利用函数 get 来取得句柄中的数据值,利用 set 俩改变句柄中数据的值,并利用global 在不同的控件中共享数据。

完整的回调函数如下:

function slider1_Callback(hObject, eventdata, handles)global a;set(handles.edit1,'string',num2str(get(hObject,'value')));a=str2num(get(handles.edit1,'string'));set(handles.uitable1,'data',[a,2*a]);function slider1_CreateFcn(hObject, eventdata, handles)% Hint: slider controls usually have a light gray background.
if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor',[.9 .9 .9]);
endfunction edit1_Callback(hObject, eventdata, handles)global a;
set(handles.slider1,'value',str2num(get(hObject,'string')));
a=str2num(get(handles.edit1,'string'));
set(handles.uitable1,'data',[a,2*a]);function edit1_CreateFcn(hObject, eventdata, handles)% Hint: edit controls usually have a white background on Windows.
%       See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');
end

程序运行的结果如下:

Matlab GUI 设计(3):edit、slider、table数据同步相关推荐

  1. matlab写函数进行坐标正反算,坐标正反算的MATLAB GUI设计与应用

    第 30 卷 第 4 期 2018 年 10 月 黄河水利职业技术学院学报 JournalofYellowRiverConservancyTechnicalInstitute Vol.30 No.4 ...

  2. MATLAB GUI设计——绘图

    MATLAB GUI设计--绘图 讨论两个问题,将MATLAB绘图保存为适合于论文使用的格式,绘图的一些技巧.也许我们都这样的做过,MATLAB所绘制的图形要保存为图片,一般是使用截图的方式,或者使用 ...

  3. MATLAB GUI设计 多个选项卡/子页面

    MATLAB GUI设计 多个选项卡/子页面 需要使用GUI Layout Toolbox,文末附下载链接 % 创建一个figure f = figure('MenuBar','none','Tool ...

  4. matlab gui .fig,精通MATLAB GUI设计 matlab gui 图形处理 图形用户界面(Graphical User Interface - 下载 - 搜珍网...

    压缩包 : xunzai.com_陈垚光<精通MATLAB GUI设计>.rar 列表 陈垚光<精通MATLAB GUI设计>/第10章/exm10.m 陈垚光<精通MA ...

  5. Matlab GUI设计

    Matlab设计图形用户界面 设计的比较简易,通过修改对象属性代码等可以更精细. function varargout = Guide2(varargin) % Simple example of M ...

  6. MATLAB GUI设计 图像处理基本操作(一)

    最近在做图像处理的有关课设,想起以前学过的以冈萨雷斯版为教材的数字图像处理的内容和基于MATLAB GUI编程的代码,在此浅浅记录一下. 一.GUI打开与基本操作 >>guide 在命令行 ...

  7. MATLAB GUI设计如何弹出新界面?

    本意是想要设计一个图像处理系统,在该系统中点击按钮可以跳转到另一个GUI界面,在该界面设计后将所设置参数引回到原有的GUI界面,并在该界面进行显示处理好的图像.各位如果有好的结果的话麻烦江湖救急!或者 ...

  8. matlab gui设计 一个按钮两个功能(开始和暂停)

    matlab 设计Gui界面,想通过一个按钮实现两个通功能,点一下是开始,再点击一下是暂停,再再点击又是开始 要求:开始按钮,点击之后,程序开始运行,此时按钮变为暂停按钮 再次点击,程序暂停,按钮变为 ...

  9. Matlab GUI 设计(4):不同控件之间的数据传递

    GUI 中,不同GUI 之间的数据共享有四种方法:GUI 数据.Application数据.UserData数据.global数据.global 比较简单,主要学习前三种方法. GUI 数据:hand ...

最新文章

  1. 超越谷歌BERT!依图推出预训练语言理解模型ConvBERT,入选NeurIPS 2020
  2. 1哈哈欢迎使用CSDN-markdown编辑器
  3. Automatic Exploit Generation:漏洞利用自动化
  4. 互联网1分钟 |1228
  5. 【2012百度之星/资格赛】D:共同狂欢
  6. python科学计算和可视化编程软件_python科学计算与可视化
  7. mysql 宽容模式_SELinux 宽容模式(permissive) 强制模式(enforcing) 关闭(disabled)
  8. 如何查看JVM内存中的对象和执行中的方法
  9. 苹果手机电量剩余多少冲电对电池最好?
  10. “陆奇争夺战”:江湖传言,得陆奇者得AI天下。
  11. 动手学PyTorch知识点汇总
  12. SQL Server 2016 开发版安装
  13. C#winform之自定义按钮形状(初级版)
  14. 【云计算】阿里云-pyodps处理指南
  15. 如何在Microsoft Excel电子表格之间交叉引用单元格
  16. Linux基础篇——Linux用户管理、组管理、权限管理
  17. 一个屌丝程序猿的人生(二十二)
  18. 如何在Word小方框里打勾
  19. [转载] 晓说——第14期:揭秘战争秘闻 朝鲜战争62年祭(上)
  20. 学大伟业 2017 国庆 Day1

热门文章

  1. Selenium3+python自动化008-操作浏览器基本方法
  2. Service的线程、工作线程、权限及系统Service
  3. Activity动画效果笔记
  4. cocos2d-x游戏引擎核心(3.x)----启动渲染流程
  5. 【转】CSS3 Box-sizing
  6. [翻译] FBNetworkReachability
  7. slf4j 日志接口 统一
  8. Web 设计中的 5 个最具争议性的话题
  9. 大数据在银行业的应用场景
  10. 架构师之道:面向组件的Web架构设计