本章投影片僅供本書上課教師使用,非經同意請勿拷貝或轉載

Slides:



Advertisements
Similar presentations
計算機程式及實習 Computer Program Design and Experiment) 期末報告 ppt 南台科技大學機械工程系 姓名 : 蔡中銘 學號 :4A 授課老師 : 謝慶存大帥哥.
Advertisements

南台科技大學 機械工程系 班級 : 車輛三甲 學號 : 學生 : 黃郁鈞.  BMI 值的計算就是 :  體重 / 身高 x 身高  身高需換算成公尺單位計算.
第一單元 建立java 程式.
視窗應用程式表單的基本輸出入 資管系 助理教授 詹曉苓.
題目:徽章之記憶 南台科技大學 機械系 車輛一乙 學號:4A 姓名:黃冠嘉 教師:謝慶存
計算機程式及實習 期末報告 題目:超級猜一猜
計算機程式及實習 期末報告 題目:商店結帳系統
班級:自控四甲 姓名:何禎隆 學號: 老師:謝慶存
ooxx這個遊戲程式,非常的簡單只要你小時候會玩井字遊戲即可把電腦打敗,可以說是一種考智力取勝的遊戲。
課程名稱:程式設計 授課老師:________
赋值语句与输入、输出语句.
南台科技大學 機械工程系 車輛一甲 學號:4A 學生:黃信成 老師:謝慶存
Visual Basic 2005學習範本 第5章 選擇結構.
題目:台灣客運 南臺科技大學 機械工程系 班級:奈米一乙 學號:4A 姓名:蔡政堯 授課教師:謝慶存
CH10.
Chapter 5 迴圈.
BLANK overview.
課程名稱:程式設計 授課老師:________
課程名稱:程式設計 授課老師:________
程式語言 -Visual Basic 條件結構.
建立VB.NET應用程式 資管系 助理教授 詹曉苓.
程式語言 -Visual Basic 變數、常數與資料型態.
Google Data API Spreadsheet
Controls.
副程式 將可以重複使用的程式區塊獨立而成 寫在Private Sub 函數名稱() 副程式碼 End Sub 呼叫副程式
類別(class) 類別class與物件object.
SQL Stored Procedure SQL 預存程序.
流程控制、陣列 台南市聖功女子高級中學 毛全良.
WEB伺服器控制項.
Timer & Format.
Visual Basic 物件導向程式設計簡介.
新觀念的 VB6 教本 第 6 章 資料型別.
第4章 視窗應用程式的基本輸出入.
Ch03 基本輸出入介面設計 視窗程式設計 授課教師:王大瑾.
第四章 命令按钮、标签和文本框 大多数应用程序中都有命令按钮CommandButton控件,用户可以单击按钮执行某项操作。
第4章 視窗應用程式的基本輸出入 4-1 物件基礎程式設計 4-2 表單控制項 4-3 按鈕控制項 4-4 資料輸出的標籤控制項
表單(Form).
第一單元 建立java 程式.
題目:南台飲料店結帳系統 南台科技大學 機械工程系 車輛一甲 學號:4A
網頁程式設計 本章投影片錄自HTML5、CSS3、RWD、jQuery Mobile跨裝網頁設計 陳惠貞 著 碁峰資訊股份有限公司出版
菜单、状态栏和工具栏 菜单 状态栏 工具栏 编写代码 创建用户界面 Debug and Deploy 使用 Visual
FileUpload控制項 建國科技大學 資管系 饒瑞佶 2007年.
PLC-GPPW軟體使用教學 授課教師:張祖烈
PowerPoint 2019/4/9.
計算機程式及實習 Computer Program Design and Experiment) 期末報告ppt製作 南台科技大學 機械工程系 題目:南台電影城結帳系統 班級 : 車輛一甲 學號 : 4A 授教學生: 阮偉倫 授課老師: 謝慶存.
輸入&輸出 函數 P20~P21.
計算機概論與實習期末報告 老師:謝慶存 4a415057賴震製作.
打地鼠(陣列版).
第一次Labview就上手 參考書籍: LabVIEW for Everyone (Jeffrey Travis/Jim Kring)
第 11 章 功能表列與工具列的設計 & 第 10 章 檔案.
GUI Title and GUI Status
挑戰C++程式語言 ──第8章 進一步談字元與字串
第六章 視窗應用程式設計初探 本章投影片僅供本書上課教師使用,非經同意請勿供網路下載或拷貝.
雙按button1,2,3,4 Method 方法/動作 textBox2.Text textBox1 textBox3.Text 轉為數字 c是數字 int c = int.Parse(textBox1.Text) + …; textBox3.Text = c.ToString();
Controls.
GridView.
GridView操作 (II).
LINQ資料查詢技術.
利用 EditorConfig 自訂文字編輯器設定
Video 影像 (VideoPlayer 影像播放器、Camcorder 錄影機) 靜宜大學資管系 楊子青
挑戰C++程式語言 ──第7章 輸入與輸出.
流程控制:Switch-Case 94學年度第一學期‧資訊教育 東海大學物理系.
PowerPoint 操作介紹 106 計算機概論
函數應用(二)與自定函數.
資料結構與C++程式設計進階 期末考 講師:林業峻 CSIE, NTU 7/ 15, 2010.
再戰DataSet.
多國語系 建國科技大學 資管系 饒瑞佶.
Unix指令4-文字編輯與程式撰寫.
方法(Method) 函數.
InputStreamReader Console Scanner
Presentation transcript:

本章投影片僅供本書上課教師使用,非經同意請勿拷貝或轉載 第四章 輸入介面設計 本章投影片僅供本書上課教師使用,非經同意請勿拷貝或轉載

4-1 TextBox文字方塊 一、TextBox控制項常用的屬性

【注意】 活用MultiLine、WordWrap 和 ScrollBars 屬性  【注意】 活用MultiLine、WordWrap 和 ScrollBars 屬性  MultiLine=False,使得超出文字方塊寬度的 資料無法顯示。  MultiLine=True,可調整文字方塊的上下高度 來顯示多行文字。  MultiLine=True 且 WordWrap=True時,超過 文字方塊控制項寬度的資料自動移到下一行繼續 顯示。  MultiLine=True 且WordWrap=False時,則 需要進一步設定ScrollBars屬性,使其出現垂直 或水平捲動軸,才能操控範圍。

二、字串與數值的轉換函式 文字方塊 Text 屬性的資料是屬字串資料型別。 欲將 Text 屬性中的資料取出作數值運算  加法時,將 + 加 號視為字串合併運算,發生錯誤。  減法、乘法、除法,取出的 Text 屬性值會自動 轉成數值,不發生錯誤。 建議 Text 屬性的資料做四則運算  先做字串轉數值後再做運算,以免發生錯誤。 VB 提供 Val() 函式將字串轉成數值。語法: Val(str) 若 Text 屬性值的資料含有數字和文字  Val() 函式 只將前面是數字部份轉換成數值

【例】 Val ("123") →123 Val ("45ABC") →45 Val ("XY4.0") →0 【例】若TextBox1.Text= “22 ”和TextBox2.Text=“11”  TextBox3.Text = TextBox1.Text + TextBox2.Text 結果:2211  TextBox3.Text = Val(TextBox1.Text) + Val(TextBox2.Text) 結果:33  TextBox3.Text = TextBox1.Text – TextBox2.Text 結果:11  TextBox3.Text = Val(TextBox1.Text) - Val(TextBox2.Text) 結果:11

 TextBox3.Text = TextBox1.Text * TextBox2.Text 結果:242  TextBox3.Text = Val(TextBox1.Text) * Val(TextBox2.Text) 結果:242  TextBox3.Text = TextBox1.Text / TextBox2.Text 結果:2  TextBox3.Text = Val(TextBox1.Text) / Val(TextBox2.Text) 結果:2

三、TextBox控制項常用的方法 1. Clear()方法 TextBox1.Clear( ) 或 TextBox1.Text = ""

三、TextBox 控制項常用的方法 表單和控制項除具有屬性外還有能執行的一些特定功能,稱為「方法」。 方法只能在程式執行階段才能呼叫使用。 1. Clear()方法 將文字方塊的顯示內容清成空白。 如將 TextBox1 文字方塊內顯示的文字清除 寫法: TextBox1.Clear( ) 或 TextBox1.Text = ""

2. Focus()方法 設定控制項為駐停焦點,也就是成為作用物件。 如將TextBox1 文字方塊設為目前駐停焦點,寫法: TextBox1.Focus( ) 一個控制項擁有TabIndex、TabStop屬性,就可 設為駐停焦點。 在程式中透過Focus()方法來指定某一控制項,成為 表單目前的駐停焦點。 在程式執行間,不須使用者按 鍵,可直接指定 某控制項成為作用物件。

表單中若有多個控制項 第一個建立的控制項 TabIndex 屬性值為 0 第二個為1,依此類推。 被指定駐停焦點控制項的 Visible 與 Enabled 屬性值皆設為「True」,此方法才有效。

' FileName : us2nt.sln 01 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 02 lblRate.Text = "32.5" 03 lblNT.Text = "" 04 txtUs.TabIndex = 0 05 End Sub 06 ' --------------------------------------------------------------------------------- 07 Private Sub btnChange_Click(ByVal sender As System. Object, ByVal e As System.EventArgs) Handles btnChange. Click 08 lblNT.Text = Val(lblRate.Text) * Val(txtUs.Text) 09 End Sub 10 ' ----------------------------------------------------------------------------------

11 Private Sub btnCls_Click(ByVal sender As System 11 Private Sub btnCls_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCls.Click 12 lblNT.Text = "" 13 txtUs.Clear() 14 txtUs.Focus() 15 End Sub

四、TextBox 控制項的 TextChanged事件 程式執行階段,當文字方塊的 Text 屬性內 的資料有異動時,馬上觸動該文字方塊的TextChanged事件。 若希望文字方塊有異動,表單上相關控制項的資料馬上跟著文字方塊的內容異動  可免去按鈕才知道結果。

FileName : circle.sln 01 Private Sub Form1_Load(ByVal sender …..) Handles MyBase.Load 02 lblArea.Text = "" 03 txtPassword.MaxLength = 3 04 txtPassword.PasswordChar = "?" 05 txtPassword.TabIndex = 0 06 txtR.ReadOnly = True 07 End Sub 08 ' --------------------------------------------------------------------------------------------- 09 Private Sub btnCheck_Click(ByVal …..) Handles btnCheck.Click 10 If txtPassword.Text = "abc" Then 11 txtR.ReadOnly = False 12 txtR.Focus() 13 End If 14 End Sub 15 ' -------------------------------------------------------------------------------------------- 16 Private Sub txtR_TextChanged(ByVal …..) Handles txtR.TextChanged 17 lblArea.Text = 3.14 * Val(txtR.Text) ^ 2 18 End Sub

4-2 格式化輸出 一、Space函式 Space函式可以在目前游標處插入指定數目的空白字串,在程式中可利用該函式調整文字位置使其上下對齊。語法如下: 【例】在TextBox1文字方塊控制項上面顯示品名 (iPhone)和單價,品名和單價之間加上兩個 空白字元。 TextBox1.Text = "iPhone:" & Space(2) & "9000元"

4-2 格式化輸出 一、Space函式 [例] TextBox1.Text = "iPhone:" & Space(2) & "9000元" 使用時機 想讓資料在表單上排列整齊,需用  格式化函式才能對輸出資料格式化。 一、Space函式 可在目前游標處插入指定數目空白字串 在程式中可調整文字位置使其上下對齊。 語法: Space(n) [例] TextBox1.Text = "iPhone:" & Space(2) & "9000元"

二、vbNewLine、vbCrLf、vbTab常數 Chr函式可將數值轉成對應的ASCII 碼字元。 如Chr(65)的值為 "A"。 Chr(9)字元就相當於鍵盤的 鍵,其後文字 跳到下一個定位點位置。 定位點和定位點間可容納8個字元,如果字串 長度超過就會多佔一個定位點。 文字如要換行要 用Chr(13) + Chr(10) 兩個字元 組成換行符號。

系統定義vbNewLine和vbCrLf常數來表示 Chr(13) + Chr(10)換行符號。 【例】 TextBox1.Text=“== 單價表 ==” & vbCrLf & “iPhone4” & vbTab & “9000元” 會顯示成:(  代表控白字元) == 單價表 == iPhone49000元

三、Format函式 Format函式可將輸出資料以指定格式輸出, 使得輸出資料能對齊以方便閱讀。  運算式可為數值或字串運算式。  fmt參數若省略時,會將數值轉換成字串, 並將正數前的空白去除。

 數字的預設格式如下表:

 常用Format函式的數字自訂格式如下表:

 常用Format 函式的時間格式: Now() 函式用來取得目前日期與時間。 顯示結果會因「控制台」中「地區及語言」 格式設定不同而不同。 本書採的日期及時間的格式如下: (以2010年3月21日上年9點20分48秒為例) 簡短日期 → 2010/03/21 完整日期 → 2010年3月21日 簡短時間 → 上午09:20 完整時間 → 上午:09:20:48

常用Format函式的日期與時間自訂格式字元如下表:

【例】設日期為#3/17/2010 5:21:50 PM#,然後使用各種Format函式格式,來觀察執行結果。 Dim day As Date = #3/17/2010 5:21:50 PM# txtShow.Text = Format(day, "h:m:s")  值為"5:21:50" txtShow.Text = Format(day, "hh:mm:ss tt")  值為"05:21:50 下午" txtShow.Text = Format(day, "HH:mm:ss") 值為"17:21:50" txtShow.Text = Format(day, "yyyy MMM d,dddd")  值為"2010 三月17,星期三" txtShow.Text = Format(day, "MM/d/yy")  值為"03/17/10" txtShow.Text = Format(day, "yy-MMMM-d") 值為"10-三月-17" txtShow.Text = Format(day, "M/d/yyyy HH:mm") 值為"3/17/2010 17:21"

【上機】

' FileName : member.sln 01 Private Sub Form1_Load(ByVal …. ) Handles MyBase.Load 02 txtData.TabStop = False 03 txtData.Text = Space(6) & "VB俱樂部會員名冊" & Space(4) & Format(Now(), "M-d-yyyy h:m:s") & vbCrLf & vbCrLf 04 txtData.Text &= "姓名" & vbTab & "電話" & vbTab & vbTab & "生日" & vbTab & vbTab & "消費金額" & vbCrLf 05 txtData.Text &= "------" & vbTab & "------" & vbTab & vbTab & "------" & vbTab & vbTab & "------------" & vbCrLf 06 txtData.Text &= "楚留香" & vbTab & "(02)12345678" & vbTab & _ Format(#3/17/1982#, "d") & vbTab & Format(78260.5, "$000000.0") & vbCrLf 07 txtData.Text &= "張無忌" & vbTab & "(02)87654321" & vbTab & _ Format(#11/6/1980#, "d") & vbTab & Format(129510, "$000000.0") 08 End Sub

4-3 InputBox函式 InputBox函式會顯示輸入對話方塊,使用者只要 在文字方塊內輸入資料,再按 <[確定> 鈕,且所 輸入資料會以字串型別放入指定的字串變數。 語法:

InputBox 函式的引數說明: 1. 字串變數 呼叫 InputBox 函式時會出現一個對話方塊, 輸入文字後 按 <[確定> 鈕,文字會傳給等號左邊的字串變數。 按 <取消> 鈕,傳回值是空字串("")。 2. 提示訊息引數 用來提醒使用者輸入資料的內容或格式, 本引數不可省略。若沒有提示訊息必須 "“ 加入表示。

3. [ ] 引數 中括號內引數可省略,但引數間的逗號需保留。 4. 標題引數 為對話方塊標題文字,屬選擇性引數,如省略 以專案名稱當做標題文字。 5. 預設值引數 呼叫 InputBox 函式時,文字方塊中預設的文字 資料。 6. Xpos,Ypos引數 設定對話方塊在螢幕的座標,單位為Pixel (像素)。 若省略此引數,對話方塊預設在螢幕中央偏上方 1/3處。

' FileName : welcome.sln 01 Private Sub Form1_Load(ByVal … ) Handles MyBase.Load 02 Dim user As String 03 user = InputBox("請輸入姓名:", "姓名") 04 lblWelcome.Text = "歡迎" & user & "使用本軟體!" 05 End Sub

4-4 MsgBox 函式與 MsgBox 敘述 MsgBox函式與MsgBox敘述用法一樣。

一、MsgBox函式的語法 當呼叫 MsgBox 函式時會出現指定的指令 按鈕,使用者只要按下按鈕後,該鈕 代碼會存入傳回值中。

二、MsgBox 函式的格式碼

「警示圖示代碼」的相關內容如下表:

其他代碼如下表:

1. MsgBox("是否結束程式?", 4, "結束") 2. MsgBox("是否結束程式?", MsgBoxStyle.YesNo, "結束")

1. MsgBox("是否結束程式?", 52, "結束") ' 4 + 48=52 2. MsgBox("是否結束程式?", MsgBoxStyle.YesNo Or _ MsgBoxStyle.Exclamation, "結束") 3. MsgBox("是否結束程式?", MsgBoxStyle.YesNo + _

三、MsgBox函式的傳回值

【例】以訊息方塊詢問是否結束程式,若使用者按 [是] 鈕就結束程式,程式碼有兩種寫法: 另一種寫法:

【問題分析】 1. 使用InputBox函式詢問密碼。 2. 密碼錯誤時,用MsgBox敘述顯示錯誤訊息。 3. 華式溫度 = 9/5 x攝氏溫度+32。 【上機】 1. 專案名稱命名為『password』。 2. 在表單內,建立如下圖所示之控制項:

' FileName : password.sln 01 Private Sub Form1_Load(ByVal ….) Handles MyBase.Load 02 lblF.Text = "" 03 Dim password As String 04 password = InputBox("請輸入密碼:", "密碼") 05 If password <> "123" Then 06 MsgBox("密碼錯誤!程式將結束!!", MsgBoxStyle.OkOnly Or MsgBoxStyle.Exclamation, "錯誤") 07 End 08 End If 09 End Sub 10 ' ------------------------------------------------------------------------------- 11 Private Sub txtC_TextChanged(ByVal ….) Handles txtC.TextChanged 12 Dim c As Single 13 Dim f As Single 14 c = Val(txtC.Text) 15 f = c * 9 / 5 + 32 16 lblF.Text = Format(f, "###.00") 17 End Sub