290 likes | 412 Views
程式設計 ( 教學資料下載 ). 張維漢老師. Email: cwh1@center.fotech.edu.tw. Week 7-8 課程大綱 表單與基本輸出入. 4-1 表單 外觀 進入整合開發環境後,它就已經預先開啟了一個空白的表單 --Form1. Icon. Caption. Height. Appearance. BorderStyle. Width. 屬性值. 說 明. 0. 沒有框線. 1. 單線固定. 2. 大小可調整 ( 預設值 ). 3. 雙線固定對話方塊. 4. 單線固定工具視窗. 5.
E N D
程式設計(教學資料下載) 張維漢老師 Email: cwh1@center.fotech.edu.tw Week 7-8課程大綱 表單與基本輸出入
4-1表單 • 外觀 • 進入整合開發環境後,它就已經預先開啟了一個空白的表單--Form1 Icon Caption Height Appearance BorderStyle Width
屬性值 說 明 0 沒有框線 1 單線固定 2 大小可調整(預設值) 3 雙線固定對話方塊 4 單線固定工具視窗 5 可調整工具視窗 • 常用的表單屬性 • 整體外觀 • Appearance:表單的顯示方式: • 0表平面顯示 • 1表立體顯示(預設值) • BorderStyle:表單的框線格式: 控制功能表不見了
Caption:這是表單的標題屬性,也就是在表單上方所顯示的字串。Caption:這是表單的標題屬性,也就是在表單上方所顯示的字串。 這是「標題」(Caption屬性) 這也是「標題」(Caption屬性)
表單的顏色或背景背景 • BackColor:表單的背景顏色。 • 按一下Backcolor屬性值右邊向下的箭頭,會看到以下的兩頁畫面: • 調色盤:指定表單的顏色,不論外在環境如何改變,一定都會按照設計者所指定的顏色來呈現。 • 系統配色:使用目前環境下各種物件的顏色。這些顏色可以在「控制台/顯示器/外觀」中來設定。
ForeColor:這是指表單的前景顏色。 • 例如:表單上所顯示字串的顏色就是ForeColor(藍色),表單的底色就是BackColor(白色)。 • Picture:設定表單是否要以張圖片作為它的背景。 • 在Picture屬性欄右邊按鈕[…]處click,選取您喜愛的圖片,將圖加入表單中。
表單控制功能表 • ControlBox:預設值是True。False時,表單在執行時不會出現表單控制功能表(或稱為:系統功能表),也不會出現MaxButton及MinButton。 • MaxButton:按下「放到最大」,這個表單會放大到螢幕的最大界限。預設值是True。 • MinButton:按下它,這個表單會變為最小化的狀態。預設值是True,也就是表單會出現MinButton。 • 這幾個屬性跟BorderStyle有關係,例如將BorderStyle設為”1-固定單線”,則MinButton及MaxButton屬性值會自動變成False。 按下這個小圖示,開啟控制功能表 MinButton MaxButton 表單控制功能表
修改表單屬性實作 • 範例: • 開始執行時的畫面如下圖所示 • 注意表單背景、右上角的小圖示、左上角的關閉鈕等特徵。 • 用滑鼠在表單上Click,每Click一下,表單上就會列印出現在的系統日期及時間
屬性欄 屬性值 Name FormTest BorderStyle 1-單線固定 Caption 表單測試 ForeColor &H0000FFFF&(黃色) Icon program files\Microsoft Visual Studio\Common\Graphics\Icons\Computer\pc4.ico Picture EX4-2\Lake.jpg Width 4575 Height 3330 • 說明: • 以下是這個唯一的表單物件相關的屬性設定值 • 用滑鼠在表單上Click時,要顯示現在的系統日期及時間,因此我們必須在Form的Click事件程序中撰寫將現在日期及時間顯示在表單上的程式碼 • 將這個表單的BorderStyle設定為”1-單線固定”,因此在表單的右上角不會出現最大化及最小化按鈕 • 如果要結束程式,請用滑鼠按下在右上方的關閉鈕
步驟: • 設定專案名稱 • 在專案總管中以滑鼠點選專案名稱(預設為Project1) • 在屬性視窗中找到Name屬性欄,並將其值設為TestProject A、 選擇專案總管 中的專案名稱 B、修改專案的 Name屬性
設定表單上的屬性 • 設定表單名稱 i. 請在專案總管上選擇表單(預設為Form1) ii. 找到在屬性視窗中的Name屬性,並將其值設 為FormTest • 設定表單的BorderStyle屬性為:1-單線固定 • 設定表單標題文字:請在屬性視窗中找到Caption屬性欄,並將其值設為:表單測試 A、修改表單的Name屬性 B、修改表單的BorderStyle屬性 C、修改Caption屬性
設定表單的ForeColor i. 找到屬性視窗中的ForeColor屬性,並按下右 邊的[▼]按鈕。 ii. 按下按鈕之後,會出現兩頁選擇顏色的表 格;請在”調色盤”頁籤上選擇黃色。 i、按下ForeColor右邊的[▼]按鈕 ii、選擇”調色盤”頁籤的黃色色塊
設定圖示(Icon) i. 找到Icon屬性欄,並按下右邊的[…]按鈕 ii. 在”載入圖示”對話方塊上面找到:program files\Microsoft Visual Studio\Common\Graphics\Icons\Computer\pc4.ico這個檔案,然後按下[開啟舊檔(O)]按鈕。 i、按下Icon右邊的[…]按鈕 ii、找到所需的.ICO檔案 iii、按下開啟舊檔(O)按鈕
設定背景圖(Picture) i. 找到Picture屬性欄,並按下右邊的[…]按鈕 ii. 請在”載入圖片”對話方塊上,找到附書光碟 中第四章EX4-2目錄下的Lake.JPG圖檔,並按 下[開啟舊檔(O)]按鈕 i、按下Picture右邊的[…]按鈕 ii、找到所需的圖檔 iii、按下[開啟舊檔(O)]按鈕
設定表單的寬、高 • 在屬性視窗中找到Width屬性,將其值設定為4575 • 找到Height屬性,設定為3330 3330 4575
撰寫事件程序碼 • 在表單上以滑鼠Double-click,開啟程式碼視窗 在表單上Double-click就可以開啟程式碼視窗
在程式碼視窗上選擇Form_Click事件程序 找到Form物件的Click事件程序 • 填入程式碼
按下鍵盤上的[F5]按鈕開始執行 以滑鼠在視窗上click • 試著以滑鼠在視窗背景圖上Click,每Click一下應該顯示一次系統日期及時間 每Click一下就會顯示一次系統日期及時間
順序 事件程序 1 Form_Initialize 2 Form_Load 3 Form_Resize 4 Form_Activate 5 Form_Gotfocus 6 Form_Paint • 表單常用的事件程序 當表單顯示在螢幕上時,它所觸發事件程序如下表所示。其中比較常用的只有兩個: • Form_Load • Form_Activate
4-2命令鈕(Command Button) • 放置命令鈕 • 在代表命令鈕的圖示上Double-click • 或以拖放(Drag-and-Drop)的方式 在表單中的命令鈕 在工具箱中的命令鈕圖示
命令鈕常用的屬性 • Caption:按鈕上的文字 • Cancel: • 命令鈕的Cancel屬性為True時,在表單處於作用中(Active)的狀態下,按下鍵盤上的[ESC]就會執行其click事件程序 • 在同一個表單中,只能有一個命令鈕的Cancel屬性可以被設為True • Default: • 命令鈕的Default屬性為True時,在表單處於作用中(Active)的狀態下,而且表單上沒有其他命令鈕獲得輸入焦點(Focus,或稱為駐點),按[Enter]鍵就會執行其Click事件程序 • 在同一個表單上只能有一個命令鈕的Default屬性被設定為True。 • Enabled:預設值為True。當這個屬性設定為False時,命令鈕會以淡色(或模糊)的方式來顯示,此時命令鈕不能接受使用者以滑鼠或是鍵盤輸入訊息
命令鈕實作 • 範例 • 表單上有兩個命令鈕,上面的文字分別寫著[顯示(D)]及[結束(X)],如下圖所示 • 滑鼠移動到按鈕上時,按鈕都會顯示出簡單的”提示”
符 號 作 用 + 加法運算 - 減法運算 表示負數 * 乘法運算 / 除法運算 \ 整數除法運算 mod 產生除法運算後的餘數 ^ 次方運算 • 4-3運算式 • 算術運算子(Arithmetic Operator)
執行後的結果 • 字串運算子 • +、&運算子 • “+”與“&”為連接字串的運算子,功能完全一樣s1 = “This is”+“ a Test”‘結果為“This is a Test“s2 = ”學貫”&“行銷公司”’結果為“學貫行銷公司” • 固定長度字串變數並不太適合用來作字串連接運算 • 建議儘可能用“&”作為字串連接符號
格 式 樣版字串 結果為True的被搜尋字串 意 義 結果為False的被搜尋字串 ? 忽略單一字元 m*j "mj"、"msj"、"mmxj"、"mMJj" "mm"、"mjm" * 忽略零到多個字元 Xbook* "Xbook Corp."、"Xbook" "學貫(Xbook)" # 忽略單一阿拉伯數字字元 s?t "sat"、"sit" "seat"、"st"、”shit” [字元] 是否含有中刮號中列舉的字元 No.## "No.01"、"No.99" "No.1"、"No.a1" [!字元] 是否不含中刮號中列舉的字元 [ABC] "A"、"B"、"C" "a"、"b"、"D" [!ABC] "D"、"a"、"b" "A"、"B"、"C" • Like運算子 • Like是作為字串比較的運算子,比對字串時可以用萬用字元(Wild Card)來做為比對的樣版 • 格式 • 被搜尋的字串 Like樣版(Partten)字串
在Form_Activate事件程序中填入以下的程式碼1. Private Sub Form_Activate()2.FontSize = 363.FontTransparent = False ‘先擦拭原有位置上的資料4.CurrentX = 500: CurrentY = 5005.Print “三”6.CurrentX = 500: CurrentY = 5007.Print “川”8.FontTransparent = True ’複寫在原有位置上的資料9.CurrentX = 2000: CurrentY = 50010.Print “三”11.CurrentX = 2000: CurrentY = 50012.Print “川”13.End Sub
4-6傳統的格式化輸出 • 分號”;” • 如果,我們一列尚未輸出完畢,下次再輸出時希望能夠緊接著同一列輸出,則可以在還未輸出完畢的那一個Print方法後加上一個”;” • 例如:Print “第一個字串”;Print “第二個字串”結果會印出:第一個字串第二個字串
字元 意 義 0 表示該位置為一個數字。在輸出時,如果該位置沒有相對應的數字,則補上0。 例如: Print Format(12.34,"000.000") 輸出的結果為:012.340 # 表示該位置將填入一位數字。但是如果該位置是前導0或是小數點以下的0,則不會輸出任何字元。 例如: Print Format(12.03450,"###.######") 則輸出的結果為:12.0345 , 標出小數點所在的位置千位的分隔點,請注意這一個千位分隔點必須放在正確的位置才有作用。 例如:Print Format(12345.67,"###,###,###.###") 則輸出的結果為:12,345.67 – 按照原來的字元輸出。 例如: Print Format(“23936329”,"###-####") 則輸出的結果為:2393-6329 • Format函數 • 格式字串型別變數 = Format(數字型別的常數或變數,格式化字串) • 格式化字串中的特殊字元