內容簡介
《MATLAB GUI設計學習手記(第2版)》在第1版的基礎上,完善了全書知識結構,突出了gui設計重點,對讀者經常遇到的38個問題作了透徹的解答,並提煉出13個專題作了詳盡的介紹,最後配以長達17.5小時的免費視頻教程對書中專題和答疑部分進行了全面細緻的講解。《matlab gui設計學習手記(第2版)》由淺入深、循序漸進地介紹了gui設計的基礎知識和技巧,旨在使讀者在較短時間內熟練掌握gui設計的精要所在。
《matlab gui設計學習手記(第2版)》首先介紹了gui設計的預備知識;然後詳細講解了gui對象的屬性及兩種創建gui的方法:採用函式創建和採用guide創建;之後深入講解了activex控制項、定時器、串口及mcc編譯的相關知識;最後,書中給出兩個綜合實例,供讀者研究學習。書中穿插了大量的圖表和例題,方便讀者邊查邊練。
《matlab gui設計學習手記(第2版)》適合需要短時間內迅速掌握matlab gui設計的初學者,也可作為相關專業師生或工程開發人員的參考手冊。
媒體評論
“本書主要講GUI知識,MATLAB基礎知識講得恰如其分,沒有邋遢之感,這一點作者把握地很好。今天書剛到,看了一部分,其他很多書沒有講到的地方它也提到了,感覺很好。加上還可以與作者交流,真是太好了。買書前就去論壇看過了,作者很負責任,有問必答。希望更多的人受益。”
——噹噹hanzixingl985
“這是一本非常不錯的參考書,書中的很多實例都非常生動,很適合於讀者自學。學習MATLAB GUI,如果只是看書、看屬性的用法、函式的調用等會感到非常枯燥,有點看不下去。但是結合一些實例,就容易得多。介紹和敘述性的內容大致看一下,不用記,、認真讀和做書中的例子和程式,不明白的地方再回頭查閱內容,感覺學起來就不煩了。挺好!”
——噹噹網Lichenniang
“這本書很好,我以前一般編程式都不做界面,因為工程需要,現在要做界面了,通過這本書,很快就上手了,現在已經基本能編出像樣的軟體了,主要是這本書里的都是作者的經驗之談,全是實戰型的,比起那些泛泛之作,不是一個檔次的。”
——噹噹網HolyHe
“書寫的相當不錯,從中受益匪淺!書中沒有多餘的廢話,沒有重複的知識點,很好,物有所值!”——噹噹網 Wangzhanjun300“書里全部都是GUI相關知識,作者沒有浪費紙張在MATLAB基礎知識上,欣賞這個做法。學習MATLAB GUI的首選書籍,推薦……”
——卓越網Q-wangxin的評論
“這本書真的很好,例子很多,而且非常有針對性,是一本不錯的入門書!”
——卓越網huoyu999902的評論“這個是GUI的經典教程,雖然剛出,的確是經典了,幫了我畢業設計的大忙!!!畢業設計得中國地質大學的優加!”
——卓越網 Lizhen的評論
“這本書很好喔,對GuI各個方面幾乎都進行了講解。值得好好品讀。”
——卓越網tnl0000的評論“第一印象蠻好,至少排版看起來不煩!小弟有一點點的基礎,會用MATLAB進行基本的數學計算,求導,積分,級數,傅立葉變換,矩陣及機率論懂點,所以一直以為MATLAB是科學計算器,但看到大飛做的幾個有趣的玩意,才知道MATLAB還可以這么玩。”
——MATLAB中文論壇的makesure5(現為GUI版塊版主)
目錄
第1章 gui設計預備知識
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 代碼最佳化
專題3 m檔案編程小技巧
1.4 精選答疑
問題1 單元數組占用的記憶體空間如何計算
問題2 如何生成指定格式的常矩陣、字元串
問題3 如何生成隨機矩陣
問題4 如何查找或刪除數據中滿足條件的元素
問題5 如何給數組元素排序
第2章 檔案i/o
2.1 知識點歸納
2.1.1 高級檔案i/o操作
2.1.2 低級檔案i/o操作
2.2 重難點講解
2.2.1 二進制檔案與文本檔案
2.2.2 sprintf與fprintf函式
2.2.3 fscanf與textscan函式
2.2.4 excel檔案操作
2.2.5 圖像數據的操作
2.2.6 低級檔案i/o操作
2.3 專題分析
專題4 matlab讀寫文本檔案
2.4 精選答疑
問題6 如何提取excel檔案中的數據信息
問題7 如何由圖像生成字元矩陣
問題8 如何循環播放wav音樂,並可以倍速/慢速播放、暫停/繼續播放和停止播放
問題9 如何讀取文本和數值混合的檔案中的數據
問題10 如何將十六進制數轉換為float值
第3章 二維繪圖簡介
3.1 知識點歸納
3.1.1 常用的二維繪圖函式
3.1.2 繪圖工具
3.1.3 繪圖注釋
3.2 重難點講解
3.2.1 二維繪圖的相關函式
3.2.2 tex字元
3.3 精選答疑
問題11 如何繪製幾何曲線,例如矩形、圓、橢圓、雙曲線等
問題12 如何繪製數據的統計圖
問題13 如何繪製特殊的字元、表達式
問題14 如何繪製格線圖
第4章 句柄圖形系統
4.1 知識點歸納
4.1.1 句柄圖形對象
4.1.2 句柄圖形對象的基本操作
4.1.3 句柄圖形對象的基本屬性
4.1.4 根對象
4.1.5 圖形視窗對象
4.1.6 坐標軸對象
4.1.7 核心圖形對象
4.1.8 uicontrol對象
4.1.9 hggroup對象
4.1.10 按鈕組與面板
4.1.11 自定義選單與右鍵選單
4.1.12 工具列與工具列按鈕
4.1.13 uitable對象
4.2 重難點分析
4.2.1 句柄式圖形對象的常用函式總結
4.2.2 figure對象的幾個重要屬性
4.2.3 axes對象的幾個重要屬性
4.2.4 line對象的幾個重要屬性
4.2.5 text對象的幾個重要屬性
4.2.6 uitable對象的幾個重要屬性
4.2.7 uicontrol對象中的text控制項與核心圖形對象中的text對象的比較
4.2.8 對象的tag值與句柄值的概念比較(對guide創建的gui而言)
4.2.9 uimenu與uieontextmenu對象
4.3 專題分析
專題5 超文本標記語言(html)在matlab中的套用
專題6 表格設計
專題7 坐標軸設計
4.4 精彩答疑
問題15 如何創建滿足要求的line對象
問題16 如何創建動態的gui對象
問題17 如何為視窗設計背景圖片
問題18 如何定製視窗的選單
問題19 如何設計視窗選單並編寫回調函式
問題20 如何採用ui控制項實現簡易的時鐘
問題21 如何實現文字的水平循環滾動效果
問題22 如何構造和使用hggroup對象
問題23 如何使視窗最大化、最小化、置頂和居中,如何在視窗中更換圖示
問題24 怎樣利用uitable對象在列名、行名或單元格中輸入上下標和希臘字母
問題25 如何更改選單項的字型大小,如何設定選單項的字型顏色
問題26 如何逐個輸出坐標軸內的圖形到單獨的圖片中
第5章 預定義對話框
5.1 知識點歸納
5.1.1 檔案打開對話框(uigetfile)
5.1.2 檔案保存對話框(uiputfile)
5.1.3 顏色設定對話框(uisetcolor)
5.1.4 字型設定對話框(uisetfont)
5.1.5 頁面設定對話框(pagesetupdlg)
5.1.6 列印預覽對話框(printpreview)
5.1.7 列印設定對話框(printdlg)
5.1.8 進度條(waitbar)
5.1.9 選單選擇對話框(menu)
5.1.10 普通對話框(dialog)
5.1.11 錯誤對話框(errordlg)
5.1.12 警告對話框(warndlg)
5.1.13 幫助對話框(helpdlg)
5.1.14 信息對話框(msgbox)
5.1.15 提問對話框(questdlg)
5.1.16 輸入對話框(inputdlg)
5.1.17 目錄選擇對話框(uigetdir)
5.1.18 列表選擇對話框(listdlg)
5.2 重難點分析
5.2.1 uigetfile
5.2.2 uiputfile
5.2.3 waitbar
5.2.4 msgbox
5.2.5 questdlg
5.2.6 inputdlg
5.2.7 listdlg
5.3 專題分析
專題8 預定義對話框在gui設計中的套用
5.4 精選答疑
問題27 如何製作一個嵌套到當前視窗內的進度條
問題28 如何製作檔案瀏覽器
第6章 採用guide建立gui
6.1 知識點歸納
6.1.1 guide界面基本操作
6.1.2 gui的m檔案
6.1.3 回調函式
6.1.4 gui跨平台的兼容性設計
6.1.5 斷點調試和代碼性能分析器
6.1.6 採用guide創建gui的步驟
6.1.7 觸控按鈕(push button)
6.1.8 靜態文本(static text)
6.1.9 切換按鈕(toggle button)
6.1.10 滑動條(slider)
6.1.11 單選按鈕(radio button)
6.1.12 可編輯文本(edit text)
6.1.13 複選框(check box)
6.1.14 列表框(listbox)
6.1.15 彈起式選單(pop-up menu)
6.1.16 按鈕組(buttongroup)
6.1.17 面板(panel)
6.1.18 表格(table)
6.1.19 坐標軸(axes)
6.2 重難點分析
6.2.1 回調函式中的數據傳遞
6.2.2 gui界面之間的數據傳遞
6.2.3 keypressfcn與currentcharacter
6.2.4 windowbuttondownfcn、callback與selectiontype
6.3 專題分析
專題9 gui對象之間的數據傳遞
專題10 回調函式的套用實例
6.4 精選答疑
問題29 如何動態修改listbox的選項
問題30 如何動態修改pop-up menu的選項
第7章 activex控制項
7.1 知識點歸納
7.1.1 led狀態顯示(led activex control)
7.1.2 七段led數碼顯示控制項(numeric led activex control)
7.1.3 錶盤顯示控制項(angular gauge activex control)
7.1.4 線性測量控制項(linear gauge activex control)
7.1.5 滑動條控制項(slider activex control)
7.1.6 進度條控制項(pereent activex control)
7.1.7 選項卡控制項(tabstrip control)
7.2 重難點講解
7.2.1 led activex control概述
7.2.2 numeric led activex control概述
7.2.3 angular gauge activex control概述
7.2.4 slider activex control概述
7.3 專題分析
專題11 tabstrip控制項在gui設計中的套用
7.4 精選答疑
問題31 如何採用activex控制項製作一個滑動條
問題32 如何採用activex控制項製作一個錶盤
問題33 如何採用activex控制項製作一個數碼顯示器
問題34 如何編寫activex控制項的回調函式
第8章 定時器
8.1 知識點歸納
8.1.1 定時器對象及其屬性
8.1.2 定時器的執行模式
8.1.3 定時器的回調函式
8.1.4 定時器的操作函式
8.1.5 定時器的操作步驟
8.2 重難點分析
8.2.1 timerfcn函式
8.2.2 常用的定時器操作函式
8.3 專題分析
專題12 定時器在gui設計中的套用
8.4 精選答疑
問題35 如何讓切換按鈕定時彈起
問題36 如何在選單欄上創建萬年曆
問題37 如何採用數碼管顯示當前的年月日和時刻
問題38 如何實現——個流水燈
第9章 串口編程
9.1 知識點歸納
9.1.1 串口概述
9.1.2 串口對象的屬性
9.1.3 串口的基本操作
9.1.4 串口i/o函式匯總
9.2 重難點分析
9.2.1 串口對象的創建
9.2.2 重要的串口操作函式
9.3 專題分析
專題13 串口在gui設計中的套用
第10章 mcc編譯
10.1 mcc編譯
10.2 mcc編譯的局限性
10.3 matlab保護檔案(p檔案)
第11章 綜合實例
附 錄 matlab gui設計常用函式