Download presentation
Presentation is loading. Please wait.
1
Chapter 6 視窗應用程式基礎操作
2
6.1 Windows 應用程式專案 Windows Form (表單)是以 .NET Framework為基礎的一個新平台,用來開發Windows應用程式 提供一個具有物件導向且可延伸的類別庫,迅速開發各種 Windows 應用程式 Windows Form 是類別庫,當新增一個表單(form)到專案時,便直接繼承System::Windows:: Forms::Form 的原始類別 也可由先前已設計好的表單繼承,接著再新增或修改自己需要的功能 (後述) 在「Windows應用程式」(Windows Application)模式下,使用VC++的整合開發環境(IDE),利用工具箱,不用寫程式仍可輕易製作出所要的輸出入介面,只需專注編寫程式流程的核心,節省設計輸出入畫面時間且易維護
3
6.2 VC++物件導向觀念介紹 物件導向程式設計考慮真實世界的狀態,以接近電腦世界的方式表現出來。每一個「物件」都擁有自己的屬性、方法、事件 物件(Object) 真實世界任何具體或抽象的東西都可視為物件。如:一本書、一部車子都可視為一個物件 小物件可組成大物件,如:車子是一個大物件,由四個輪子、四個車門、方向盤等其他小物件組成 一個按鈕、文字方塊、功能表的選項、視窗等都可視為一個物件 「小算盤」可視為一個大物件,由 數個按鈕、一個文字方塊、功能表 及數個功能表項目的小物件組成
4
6.2 VC++物件導向觀念介紹 物件導向程式設計考慮真實世界的狀態,以接近電腦世界的方式表現出來。每一個「物件」都擁有自己的屬性、方法、事件 (續) 屬性 (Property) 屬性用來表示一個物件所擁有的外觀、狀態或特質等 以下圖來說, 按鈕 (物件)的文字顏色(ForeColor屬性)是紅色(屬性值), 按鈕 (物件)上的文字(Text屬性)是0(屬性值)
5
6.2 VC++物件導向觀念介紹 物件導向程式設計考慮真實世界的狀態,以接近電腦世界的方式表現出來。每一個「物件」都擁有自己的屬性、方法、事件 (續) 方法 (Method) 方法用來表示一個物件所表現的行為(動作) 例:人(物件)會跑步(方法),鳥(物件)會飛(方法) 物件與物件之間可透過方法來達到互動 例:車子(物件)撞到(方法)小明(物件) 下面以VC++來表示物件、屬性及方法
6
6.2 VC++物件導向觀念介紹 物件導向程式設計考慮真實世界的狀態,以接近電腦世界的方式表現出來。每一個「物件」都擁有自己的屬性、方法、事件 (續) 事件(Event) 當在某個物件接收訊息而產生一種反應,此種反應即稱為事件 如:在按鈕上按下滑鼠鍵,按鈕接收到按下的訊息而發生“按下”的事件,接著即會執行按鈕的Click事件函式(或稱方法) 可將處理按鈕被按下的相關程式碼撰寫在按鈕的Click事件函式內 在VC++中不同的物件可以執行不同的事件函式或方法
7
6.3 試做 Windows 應用程式 撰寫Windows Form應用程式可依下列三步驟完成: 設計表單輸出入介面
設定各控制項(物件)的屬性 撰寫程式碼
10
1. 設計表單輸出入介面
11
1. 設計表單輸出入介面
12
2. 設計各控制項的屬性
14
3. 撰寫程式碼 方法一:選取某控制項並快按滑鼠兩下進入預設的事件函式
15
3. 撰寫程式碼 方法二:透過屬性視窗的事件項目來選取要撰寫控制項的事件函式
18
01 # pragma endregion // Form1表單載入時執行Form1_Load 02 private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) { lblShow->Text = ""; 05 } // 按 <確定> 鈕 會執行btnOk_Click 06 private: System::Void btnOk_Click(System::Object^ sender, System::EventArgs^ e) { 08 lblShow->Text = "Hello, " + txtName->Text; 09 lblShow->BackColor = Color::Yellow; 10 } // 按 <清除> 鈕 會執行btnCls_Click 11 private: System::Void btnCls_Click(System::Object^ sender, System::EventArgs^ e) { 13 lblShow->Text = ""; 14 txtName->Text = ""; 15 } // 按 <結束> 鈕 會執行btnEnd_Click 16 private: System::Void btnEnd_Click(System::Object^ sender, 17 System::EventArgs^ e) { Application::Exit(); 19 }
19
6.4 認識VC++的整合開發環境 6.4.1 Visual C++整合開發環境介紹 一. 標題欄
標題列上「WinHello-Microsoft Visual C Express 版」,其中 WinHello為目前編輯的專案名稱 在標題欄左側VC++視窗圖示,主要功用在滑鼠不能正常操作時,可以按<Alt> + <Enter> 拉下功能表,再透過鍵盤上下鍵來選取命令 譬如:調整視窗或離開VC++時使用
20
二. 功能表列 功能表列位於標題欄的正下方,將VC++所提供的各種功能如下圖加以分門別類,共分成十餘個子功能表: 三. 工具列 除了在功能表提供VC++完整的操作指令外,功能表下方的「工具列」將功能表中常用的指令以圖示表示。只要在該圖示上按一下,就如同在功能表中選取該指令,可省掉兩次按鍵時間 VC++提供的多組工具列,這些工具列皆可透過功能表的 【檢視(V)/工具列(T)】指令來開啟或關閉所需要的工具列。 若不知道工具列上某個工具的名稱,可移動滑鼠到該工具圖示鈕上一會兒,會出現該圖示鈕的圖示名稱
21
四. 標準工具列 每個工具列的左邊界有一個裁接記號,只要在該處壓滑鼠左鍵往下拖曳便成為浮動工具列,寬、高度皆可調整而且可移到螢幕任何位置 若欲使浮動工具列變成緊接在功能表列下方,在該工具列的視窗的標題欄上面快按二下即可 在功能表的正下方若無此工具列,可執行功能表的【檢視(V)/工具列(T)/標準】指令,便可開啟如下圖的標準工具列:
22
五. 工具箱 工具箱位於IDE畫面的最左邊或最右邊,用在Windows Form下建立輸出入介面的工具。工具箱的操作有下列兩種方式: 1. 彈跳式 2. 固定式 工具箱共提供四十六個工具,讓開發者很方便地設計各種輸出入介面。按照IDE整合開發環境功能表的[說明(H)] ,分成十一個功能
23
6.4.2 方案總管 (Solution Explorer)
在IDE下編寫 VC++都會產生一個方案(Solution),方案是一個容器,它可以包含多個開啟、關閉和儲存在一起專案的集合 方案中的每個專案也是一個容器,常含有多個檔案或項目 包含在專案內的元件成員會依據建立它們所使用的開發語言而有所不同。這些成員包括:參考、資料連接、資料夾和檔案等 「方案」建立馬上產生指定的專案以及該專案相關的項目 為方便管理「方案」內的專案,VC++提供「方案總管」來管理各種和程式相關的檔案
24
「方案總管」除提供專案及檔案的組織條列式檢視外, 也能直接存取其中的命令,也可用來維護方案或專案外的檔案
開啟「方案總管」視窗有下列兩種方式: 執行功能表的【檢視(V)/方案總管(P)】指令 選取「標準」工具列的 方案總管圖示
26
屬性視窗
27
程式碼窗格
28
開啟「程式碼視窗」的方式有下列四種: 1 執行功能表的【檢視(V)/程式碼(C)】指令或按<F7>鍵 2 按「方案總管」視窗的 檢視程式碼鈕 3 在表單的某個控制項上按滑鼠右鍵,由快顯功能表選取「檢視程式碼」指令 4 在表單的某個控制項上快按二下,可打開該控制項的「程式碼」視窗,編輯該事件函式程式碼
29
如何將視窗疊在一起或分開
30
如何使用動態說明
31
6.5 控制項的操作 6.5.1 建立控制項 在表單上建立控制項有兩種方式: 方式一:在工具上按一下並在表單上拖曳出控制項的大小
6.5 控制項的操作 建立控制項 在表單上建立控制項有兩種方式: 方式一:在工具上按一下並在表單上拖曳出控制項的大小 方式二:在工具上快按兩下
32
6.5.2 如何選取控制項 選取某個控制項有下列三種方式: 移動滑鼠到表單某個控制項上按一下滑鼠左鍵選取。
如何選取控制項 選取某個控制項有下列三種方式: 移動滑鼠到表單某個控制項上按一下滑鼠左鍵選取。 按 <Tab> 鍵由目前作用控制項依序按照建立的 順序切換(含表單) 按屬性視窗的下拉式控制項清單按鈕選取該控制 項名稱
33
6.5.3 如何移動和調整控制項 先將欲移動的控制項變成作用控制項
如何移動和調整控制項 先將欲移動的控制項變成作用控制項 移動滑鼠到該控制項上面,當滑鼠出現雙箭頭十字游標時,才壓滑鼠左鍵並拖曳滑鼠即可 欲調整控制項大小,只要該控制項變成作用控制項後移動滑鼠到控制項四周的八個小白框上 (當AutoSize屬性設為False才會出現八個小白框),按照出現的方向指示游標調整即可,若滑鼠移到小白框尚未出現方向指示游標表示該處無法調整 若控制項沒有出現八個小白框的控制項則無法透過滑鼠來調整該控制項的大小
34
控制項對齊 當表單上有多個控制項需要上下或左右對齊時,首先將欲對齊的控制項全部框住變成作用控制項,接著選取其中一個控制項當做對齊的基準,基準點的控制項四周會以八個小白框表示,而其他控制項四週會以小黑框表示,接著執行功能表的【格式(O)/對齊(A)】來完成 譬如:以文字方塊控制項的右邊界對齊,先在左下圖先框住三個控制項,接著點選文字方塊控制項當基準點,最後執行功能表的【格式(O)/對齊(A)/右(R)】命令,此時如右下圖label1控制項和button1控制項的右邊界都對齊textBox1控制項的右邊界
36
6.5.5 如何刪除控制項 欲刪除表單上的控制項只要移動滑鼠到該控制項按一下 選取
按滑鼠右鍵由快顯功能表選取 命令便可從表單 中刪除該控制項 也可先選取某控制項再按 鍵一樣也可以達到刪除 控制項的動作
37
如何調整控制項的前後順序 當表單上有多個控制項的前後疊在一起時,欲調整其前後次序,只要移動滑鼠到欲調整的控制項上,按滑鼠右鍵由快顯功能表選取 [提到最上層(B)] 或 [提到最下層(S)] 或執行功能表 [格式(O)/順序(O)] 命令,再選取 [提到最上層(B) ]或 [提到最下層(S)] 命令 譬如:在左下圖label1控制項在最下層,先選取label1控制項,壓滑鼠右鍵由快顯功能表選取 [提到最上層(B)],結果如右下圖label1控制項被放到表單的最上面
39
如何調整控制項的定位順序 當在表單拉出控制項,VC++都會由 0 開始加以編號,此編號用來決定顯示此控制項定位順序的索引。此編號會記錄在該控制項的TabIndex屬性內 當在表單中按 <Tab> 鍵會按此編號次序,將控制項(含表單)依序輪流設成作用控制項 欲觀看各控制項的索引編號,可執行功能表的【檢視(V)定位順序(B)】命令,會如下圖在各控制項左上角出現索引編號 欲更改表單上各控制項的定位順序(即更改其索引編號),只要在下圖控制項依序點選一遍即可。此索引編號在執行時是不出現的 欲將下圖各控制項上面的索引編號移除,只要在執行【檢視(V)定位順序(B)】指令一次即可
41
如何鎖定控制項 當表單的控制項(即輸出入介面)設定完成,為防止控制項的位置不小心被移動,此時可執行功能表的【格式(O)/鎖定控制項(L)】指令,此時【鎖定控制項(L)】指令前面的圖示會由 變成 圖示加外框顯示 當控制項被鎖定時無法調整其大小和移動,此時若使用滑鼠選取控制項時不會出現八個小白框,但還能更改控制項的屬性內容 欲解開鎖定的控制項只要在執行功能表【格式(O)/鎖定控制項(L)】一次即可
42
練習:讀出系統時間 擴充第8—18頁範例程式,使其能在標題列顯示當下時間
43
練習:時鐘程式 使用工具箱中的Timer元件
Similar presentations