1. 首页
  2. 编程语言
  3. 其他
  4. MATLAB GUI设计学习手记第二版.pdf

MATLAB GUI设计学习手记第二版.pdf

上传者: 2020-05-13 02:25:43上传 PDF文件 44.54MB 热度 28次
内容简介 本书在第1版的基础上,完善了全书知识结构,突出了GU设计重点,对读者经常遇到的38 个问題作了透彻的解答,并提炼出13个专题作了详尽的介绍,最后配以长达17.5小时的免费视 教程对书中专题和答疑部分进行了全而細致的讲解,本书出浅入深,循序渐进地介绍了GUI设 计的基础知识和技巧,旨在使读者在艳短时间内熟练掌握GU设计的精要所在 本书首先介绍了GUI设计的预备知识;然后详细讲解了GU1对象的属性及两种创建GU的 方法:采用函数创建和采用GUmE创建;之后深入讲解了Activex控件、定时器,串口及mee编译 相关知识;最后,书中给出两个综合实例,供读者研究学习。书中穿插了大量的图表和例题,方 使读者边查边练 木书适合需要短时间内迅速掌捏MATLABGU设计的初学者,也可作为相关专业斯生或工 开发人员的参考手册 图书在版编目(CIP)数据 MATLABGUI设计学习手记/罗华飞编著.2版 北京:北京航空航天大学出版社,2011.2 IsBN978-7-5124-0292 I.①M…Ⅱ.①罗…Ⅲ.①算法语言一程序设计 中国版本图书馆CIP数据核字(2010)第247035号 版权所有,侵权必究。 MATLABGUI设计学习手记(第2版) 責任楫陈守平 北京航空航天大学出版杜出版发行 北京市海淀区学院路37号(邮编100191)htp://www,tussores,如om,cn 发行电话;(010}82317024传真:(010)82328025 读者信箱:burear回263,ne纬购电话:(010)82316935 北京时代华都印别有裂公司印装各地书店经销 开本:787×1091/16印张:36.75字数:01千字 2011年2月第1版2011年2月第1次印印数:600吾 ISBN978-7-5124-0292-8定价:69.80元(含光盘 前言(第2版) 本书是《MAT1ABGU1设计学习手记》的修订版,修订版在第1版的基础上,做了如下 D修正了第1版所有的已知错误,并硎除了部分不够经典的例题 增加了专题分析、答疑精选等内容,书中包含有大量知识点和经典例题,并随书赠送 张视频教学光盘,内附所有氰代码(均在MATLAB2010b环境下运行通过),以及17.5小时 的视赖讲座(本人亲自主讲,手把手教你设计GU1),另有书中所涉及基础知识的33小时视频 讲座,读者可到MATLAB中文论坛免费下载。保证全书讲解透彻、内容由浅人深 規范了代码的结构、可读性,优化了代码的效率。添加了大量的注释,注释量超 本书共分11章,每章(第3章和最后3章除外)依次由以下4节内容组成:知识点归纳、重 难点讲解、专題分析和精选答疑。知识点归纳详细全面地介绍了本章的内容与知识点,容易理 解错的知识点用【注意】标明,个别地方配以典型例题讲解;重难点讲解简要概括了本章的重点 和难点,便于读者重点掌握;专题分析系统全面地对某个知识点进行专门讲解,达到一针见血 的目的;精选答疑筛选出读者在学习过程中经常遇到的问题,配合习题进行解答。本书包含大 量的例题,建议读者先自行将例题完成,然后参考例题解析,并配合本书附赠的视频教程,分析 比较程序代码。这样边学边练,可以进一步牢固地掌握GUI设计技巧和方法。 第1章:GUI设计预备知识。本章主要介绍了MATLAB的基本程序元素、几种GUI设 计中经常使用的数据类型和矩阵操作函数,以及程序设计的5种句型(for、while循环结构,if、 with条件分支结构和try-catch结构)之后以专题形式,分别讲解了MATLABI的编程风 格代码优化以及基于MATLAB7.11的M文件编程小技巧。 第2章:文件1/O.本章主要介绍了文件1/O操作的相关函数,分为高级文件1/O和低级 文件I/O两部分。高级文件I/O介绍了读写MAT或ASCII文件、读写TXT文件、读写 Excl文件、读写图像文件及读写音频文件的方法及相关函数;低级文件I/O介绍了读写二进 制文件和读写文本文件的方法及相关函数。之后以专題形式,全面讲解了读写文本文件的技 巧和方法 第3章:二维绘图简介。本章主要介绍了与GUI设计密切相关的线性二维绘图及其相关 函数、绘图工具函数和绘图注释函数。二维绘图函数常用于GUI设计中的数据可视化模块 4章:句柄图形系统。本章主要介绍了句柄图形对象的概念及其操作函数,各种句柄图 形对象的创建方法、属性及含义。之后以专题形式,全面讲解了超文本标记语言(HTML在 MATLAE中的应用、表格设计及坐标轴设计。本章是GUI设计的重点内容,需要熟练掌握 第5章:预定义对话框。本章介绍了MATLAB环境下可调用的所有预定义对话框,包括 共对话框和MATLAB自定义的对话框。之后以专題形式,详细介绍了预定义对话框在 GU设计中的应用。预定义对话框使得GU设计更加直观、灵活 第6章:采用GUIDE建立GUI本章首先介绍了采用GUDE建立GU的方法,GUl 的M文件构成、回调函数的分类以及回调函数的编写方法,然后举例介绍了GUIDE环境下 /XTLABMATLABGI计习手记(28 CU组件的使用方法。最后以专题形式系统讲解了GU对象之间的数据传递方法,及回 函数的应用实例。通过本章的学习,读者可以设计出精美的GU界面,实现复杂的功能。本 章是GU设计的重点内容,需要熟练掌握 第7章:ActiveX控件。本章首先详细介绍了7大类的ActiveX控件:LED状态显示、七 段LED数码显示、表盘显示、线性测量、滑动条、进度条和选项卡,然后以专题形式,详细讲解 了选项卡(Tabstrip)控件在GU设计中的应用。熟练掌握这些控件,可以使GUI的界面更 加美观。本章是GUI设计的精华之处,只有掌握了ActiveX控件的设计,才能设计出精美的 软件界面 第8章:定时器。本章首先介绍了GU1设计中定时器的使用方法,然后以专题形式,举例 讲解了定时器在GUI设计中的应用。熟练掌握定时器,可以实现更复杂、实时性高的GUI 第9章:串口编程。本章首先介绍了GUI设计中串口的使用方法,然后以专题形式,详细 讲解了串口在GUI设计中的应用,并给出了一个串口通信助手的设计实例 第10章:mce编译。本章简要介绍了GU编译为独立可执行文件的方法、mc编译的局 限性和P文件的使用方法。通过本章的学习,读者可以轻松编译带有Activex控件的GUl为 EXE格式文件, 第11章:综合实例。通过详细讲解密码登录框和科学计算器这两个实例,使读者深入,熟 练地掌握采用MATLABGUI进行工程项目设计的精髓。每个实例都有详细的构思和源程 序,源程序包含详细的注释说明。通过本章的练习,读者可以独立完成复杂的GUI设计工程 项目,设计出精美、稳定可靠的GUI 最后,附录部分列出了常用的GUI设计相关函数,供读者参考查询 本书在编写过程中,参考了大量的网络资料,也得到了math、lamath、makesure5、Skye 谢中华等很多论坛上朋友的热心帮助,没有他们的帮助,本书会缺少很多闪光点,感谢MAT LAB中文论坛提供的珍贵资源! 在此我还要特别感谢以下这些朋友:陈德芝陈华、龙士斌陈红玲、高文秀陈伟,王欢、王 兵、王倩、余泽文、江礼元、苏秀华、江俊、王万寿姜明惠李文光,刘建军、聂艳、王修珍、刘德 明、刘天鹅、王家宝,他们在本书的编写过程中,不遗余力地协助我顺利完成了本书 另外,我要特别感谢一下我的妻子刘琴,创作本书的过程中,她在背后给了我无傚不至的 同时,北京航空航天大学出版社联合MATLAB中文论坛(http://www.ilovematlab.cn) 为本书设立了在线交流版块,作者也开通了新浪博客(htp://blog.sina.com.cn/matlabgui) 与读者在线交流,有问必答!作者会第一时间在MATLAB中文论坛和新浪博客上物误,也会 根据读者要求上传更多案例和相关资料。希望这本不断“成长”的书能最大限度地解决您在学 习、研究、工作中遇到的MATLABGUI相关问题 由于作者水平有限,加之时间仓促,书中难免有不足与疏忽之处,敬请读者批评指正。本 书勘误网址htp://www.ilovermatlab.cn/thread-112739-1-1.html 罗华飞 目录 第1章GUI设计预备知识 @视须敦学:3小时 1.1知识点归纳 1.1.1基本程序元素… 1.1.2数据类型… 1.1.3矩阵操作 1.1.4程序设计 1.2重难点讲解 1.2.1矩阵,向量标量与数组 1.2.2数据类型转换 1.3专题分析 专题1编程风格 专题2代码优化 专題3M文件编程小技巧 1.4精选答疑 问题1单元数组占用的内存空间如何计算 问题2如何生成指定格式的常矩阵、字符串 0和685569 问题3如何生成随机矩阵 可题4如何查找或删除数据中满足条件的元素 问题5如何给数组元素排序 第2章文件I/O Q亂频教学:1.5时 2.1知识点归纳 2.1.1高级文件O操作 2.1.2低级文件/O操作 2.2重难点讲解 2.2.1二进制文件与文本文件 117 2.2.2sprintf与fprintf函数…… 2.2.3fscanf与textscan函数… 2.2,4Excel文件操作 2.2.5图像数据的操作 2.2.6低级文件I/O操作 2.3专题分析 专题4MATLAB读写文本文件 2.4精选答疑 MATLAB MATLABGU设计学习手记(第2 问題6如何提取Excl文件中的数据信息……… 问题7如何由图像生成字符矩阵… 问題8如何循环播放wAV音乐,并可以倍速/慢速播放暂停/继续播放和停止播放 问题9如何读取文本和数值混合的文件中的数据 问题10如何将十六进制数转换为float 第3章二维绘图简介 G教学:0.25串时 3.1知识点归纳 3.1,1常用的二维绘图函数 3.1.2绘图工具 3.1,3绘图注释 444 吨3.2重难点讲解 3.2.1二维绘图的相关函数 3.2.2Tex字符 3.3精选答疑 可题11如何绘制几何曲线,例如矩形、圆、椭园、双曲线等 问题13如何绘制特殊的字符、表达式 163 云意句椭图形系 Q攫教学:4.5小时 文流卡录已中文论坛与作者 1知识点归纳 4.L.I句柄图形对象 4.1.2句柄图形对象的基本操作 4.1.3句柄图形对象的基本属性 …177 1,4根对象 4.1.5图形窗口对象 185 4.1,6坐标轴对象 4.1.7核心图形对象 1,8uncontrol对象 4.1,9hggroup对象 4.1.10按钮组与面板 4.1,11自定义菜单与右键菜单 4,1.12工具栏与工具栏按钮 4.1.13uitable对象 2重难点分析 4.2.1句柄式图形对象的常用函数总结 1.2.2Figure对象的几个重要属性… RA/TATLAB 1.2.3Axes对象的几个重要属性 4.2.4Line对象的几个重要属性 4.2.5text对象的几个重要属性 4.2.6uitable对象的几个重要属性 4.2.7uncontrol对象中的text控件与核心图形对象中的text对象的比较………269 4.2.8对象的Tag值与句柄值的概念比较(对GUIDE创建的GUI而言 1.2,9cmenu与uIcontextmenu对象 3专题分析 专题5超文本标记语言(HTML)在MATLAB中的应用 270 283 专题7坐栎轴设计 4精彩答疑 问题15如何创建满足要求的lne对 问题16如何创建动态的GUI对象 问题17如何为窗口设计背景图片 问题18如何定制窗口的菜单…… 296有 问题19如何设计窗口菜单并编写回调函数 问题20如何采用UI控件实现简易的时钟 问题21如何实现文字的水平循环滚动效果 300 可题22如何构造和使用hggroup对象 问题23如何使窗口最大化、最小化、置顶和居中,如何在窗口中更换图标 问题25如何更改菜单项的字体大小,如何设置菜单项的字体颜色 问题26如何逐个输出坐标轴内的图形到单独的图片中 问,可以凭在线空沆卡登录 问题24怎样利用Uitable对象在列名、行名或单元格中输入上下标和希腊字母…306线 第5章预定义对话框 ⊙视频教学:1,5小时 5.1知识点归纳 5.1.1文件打开对话框(uigetfile)… …311 1.2文件保存对话框(uiputfile) 314 1.3颜色设置对话框(uisetcolor) 315 5.1.4字体设置对话框(uisetfont) 5.1.5页面设置对话框(pagesetupdlg) 317 5.1,6打印预览对话框(prntprevlew 5.1.7打印设置对话框(prindle) t317 5.1.8进度条(waitbar) 5.1.9菜单选择对话框(menu 10普通对话框(dialog) 1.12警告对话框(warndlg) 5.1.13帮助对话框(helpdlg ∥TLB_MATLABGUI计习手(第251 1.15提问对话框(questdlg)……… 5.1.16输入对话框(inputing) 5.1.17目录选择对话框(uigetdir) 5.1.18列表选择对话框(listing) 5.2重难点分析 334 5.2.2uiputfile 5.2.3waiter… 5.2.4 5.2.5questdlg… 5.2.6inputdlg 若焦对此书内容有任柯 5.2.7listdir 5.3专题分析 专题8预定义对话框在GUI设计中的应用 5.4精选答疑 问题27如何制作一个嵌套到当前窗口内的进度条…………… 问题28如何制作文件浏览器 第6章采用GUIDE建立GUI 34 视願敦学:1.75小时 凭在线文流卡录 1知识点归纳 6.1.1GUIDE界面基本操作 346 6.1.2GU的M文件… 366 6.1.4GU1跨平台的兼容性设计 6.1.5断点调试和代码性能分析器 0 采用GUIDE创建GUI的步骤… 6.1,7触控按钮(Pushbutton 论坛与作者变 6.1,8静态文本(Statictext 6.1,9切换按钮(Togglebutton) 376 1.10滑动条(Slider)… 6.1.11单选按钮(Radiobutton) 380 6.1.12可编辑文本(Edittext) 382 .1.13复选框(Checkbox) 1,14列表框(Listbox) 1.15弹起式菜单(Pop-upMenu 388 6,1,16按钮组(ButtonGroup 6.1.17面板(Panel) 392 6.1,18表格(Table) 6.1.19坐标轴(a n*∥IATLR 6.2重难点分析 6.2.1回调函数中的数据传递 6.2.2GUI界面之间的数据传递 6.2.3KeyPressFcnCurrentChara 402 6,2,4WindowButtonDownFen,CallbackSelectionType-. 6.3专题分析 专题9GU1对象之间的数据传递 专题10回调函数的应用实例 6.4精选答疑 问题29如何动态修改istBox的选项… 问题30如何动态修改Pop-UpMenu的选项 第7章Activex控件…………… Q视顆教学:1.25小时 7.I知识点归纳 7.1.1LED状态显示(LEDActiveXControl 7.1.2七段LED数码显示控件(NumericLEDActiveXControl)…… 若您对此书内容有任何疑 1,3表盘显示控件(AngularGaugeActiveXControl) 7.1.4线性测量控件(LinearGaugeActiveXControl 7.1.5滑动条控件(SliderActivexControl) 7.1.6进度条控件(PercentActiveXControl) 7.1.7选项卡控件(TabStripControl)…… 7.2重难点讲解 可以凭在线变 16 7.2.1LEDActiveXControl概述 7,2.2NumericLEDActiveXControl概述 7.2.3AngularGaugeActiveXControl概述 7.2,4SliderActivexControl概述 466 专题11TabStrip控件在GU设计中的应用 7.4精选答疑 问题31如何采用AetiveX控件制作一个滑动条 问题32如何采用Activex控件制作一个表盘 问题33如何采用Active控件制作一个数码显示器 流 问题34如何编写ActiveX控件的回调函数 第8章定时器………… Q视频教学:1.5小时 8.1.1定时器对象及其属性 81.2定时器的执行模式 478 8.1.3定时器的回调函数
用户评论