1 1 visual basic l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
1-1 Visual Basic ???? PowerPoint Presentation
Download Presentation
1-1 Visual Basic ????

Loading in 2 Seconds...

play fullscreen
1 / 62

1-1 Visual Basic ???? - PowerPoint PPT Presentation


  • 235 Views
  • Uploaded on

1-1 Visual Basic 與資料庫. VB 的資料庫應用程式可分三大部份: 1.使用者介面 2.資料庫引擎 3.資料儲存區. 資料庫. Microsoft Jet 資料庫引擎. 1-2 VB 與 Access . 皆可單獨建立本身的資料庫系統. 使用 Microsoft Jet 資料庫引擎. VB 較適合撰寫使用者介面 與 J et 資料庫引擎控制碼. Access 較適合建置資料庫檔案. VB 只要編譯成 EXE 檔,在任何地方皆可使用. 1.使用者介面. 後端資料庫 Access. 資料庫引擎.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '1-1 Visual Basic ????' - andrew


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
1 1 visual basic
1-1 Visual Basic 與資料庫
  • VB的資料庫應用程式可分三大部份:

1.使用者介面

2.資料庫引擎

3.資料儲存區

資料庫

Microsoft Jet 資料庫引擎

1 2 vb access
1-2 VB 與 Access
  • 皆可單獨建立本身的資料庫系統.
  • 使用Microsoft Jet 資料庫引擎.
  • VB較適合撰寫使用者介面與Jet資料庫引擎控制碼.
  • Access較適合建置資料庫檔案.
  • VB只要編譯成 EXE 檔,在任何地方皆可使用.
slide3
1.使用者介面

後端資料庫 Access

資料庫引擎

前端使用者介面 VB

2 microsoft jet
2.Microsoft Jet 資料庫引擎

a.為動態連結程式庫(DLL)檔案.

b.可以處理儲存,頡取,更新資料.

c.提供查詢處理器,可以處理執行結構化語言

SQL 的查詢.

  • 什麼是動態連結程式庫(DLL, Dynamic Link Libraries) ?
  • 什麼是 SQL (Structure Query Language) ?
slide5
3.資料儲存區

使用 Access 資料庫

2 1 vb access
2-1 VB 與 Access連結運用
  • VBㄅ透過 Jet 資料庫引擎存取 Access 資料的方式可分為兩種:

1.資料控制項. --------------- 具有強大連結介面.

2.資料存取物件(DAO). ---- 完整程式撰寫介面.

slide7
資料控制項

資料存取物件DAO

Customer.Recordset.MoveFirst

Customer.Recordset.MovePrevious

Customer.Recordset.MoveNext

Customer.Recordset.MoveLast

slide8
2-2 牛刀小試
  • 1.建置 Access 的資料庫.
  • 2.建立 VB 的表單及顯示控制項.
  • 3.設定 VB 與 資料連結.
  • 4.設定 VB 表單上各控制項屬性及連結.
  • 5.顯示&瀏覽資料.
  • 6.執行及修正.
  • 7.儲存或編譯.
3 1 recordset
3-1 Recordset 物件的運用
  • Recordset 係指目前資料表中記錄指標位置物件.
  • 如 例1: 移動記錄指標

Data1.Recordset.MoveFirst

目前資料記錄指標

slide10
如 例2: 直接指向記錄位置

Data1.Recordsets(3).Fieds(2)

Fields(0)

Fields(2)

Fields(1)

Fields(3)

Fields(4)

Recordsets(3)

3 1 1
3-1-1 移動記錄的方法
  • MoveFirst 移至第一筆
  • MovePrevious 移至前一筆
  • MoveNext 移至下一筆
  • Movelast 移至最後一筆

* 上列4種 Recordset 物件移動方法中,皆須

以一個事件來驅動 ----- 按鈕控制項.

slide12
3-2 按鈕程式撰寫

1. 在表單上建立按鈕控制項.

2.分別在控制項中 Click 事件撰寫對應程式

3.執行.

* Click = 按下

3 3 bof eof
3-3 BOF 與 EOF
  • BOF 屬性 = 傳回真值 True ; 表示 Recordset 位

置在第一筆之前.

  • EOF 屬性 = 傳回真值 True ; 表示 Recordset 位

置在最後一筆之後.

slide14

Recordset.BOF = Tr

Recordset.BOF = True

= False

第一筆

= False

最後一筆

Recordset.EOF = True

Recordset.EOF = Tr

3 3 1 bof eof
3-3-1 撰寫程式處理 BOF 及EOF

1.程式流程 :

2.程式撰寫位置

----- Data 控制項中之Reposition 事件

開始

BOF=T

Recordset

移至第一筆

結束

3 3 2
3-3-2 需要加強的部份(一)
  • 超過資料範圍時,自動隱藏按鈕 …………………………….. Enabled 屬性
  • 按鈕增加圖示顯示 ……………………... Style & Picture 屬性
  • 顯示指標所在記錄序號 …………………… AbsolutePosition 屬性
3 3 217
3-3-2 需要加強的部份 (二)
  • 增加狀態列控制項

……………………………. StatusBar

  • 顯示訊息視窗 …………………………….. MsgBox命令
  • 按鈕說明文字

…………………………. ToolTipText屬性

msgbox
MsgBox ([提示],[按鈕型態],[標題)

語法: MsgBox “[訊息]” , [型式] , “[標題]”

  • vbOKOnly 0 只顯示 OK 按鈕。
  • VbOKCancel 1 顯示 OK 及 Cancel 按鈕。
  • VbAbortRetryIgnore 2 顯示 Abort、 Retry 及 Ignore 按鈕。
  • VbYesNoCancel 3 顯示 Yes、No 及 Cancel 按鈕。
  • VbYesNo 4 顯示 Yes 及 No 按鈕。
  • VbRetryCancel 5 顯示 Retry 及 Cancel 按鈕。
  • VbCritical 16 顯示 警告 圖示。
  • VbQuestion 32 顯示 問號圖示。
  • VbExclamation 48 顯示驚嘆號 圖示。
  • VbInformation 64 顯示 訊息圖示。
  • VbDefaultButton1 0 第一個按鈕是預設值。
  • VbDefaultButton2 256 第二個按鈕 是預設值。
  • VbDefaultButton3 512 第三個按鈕是預設值。
  • VbDefaultButton4 768 第四個按鈕是預設值。
msgbox19
MsgBox ( ) 函數傳回值
  • vbOK 1 OK
  • vbCancel 2 Cancel
  • vbAbort 3 Abort
  • vbRetry 4 Retry
  • vbIgnore 5 Ignore
  • vbYes 6 Yes
  • vbNo 7 No
3 4 1
3-4-1 物件
  • 物件(Object)

---- 介面物件 : 1.表單 2.控制項

---- 系統物件 : 如印表機

---- 資料存取物件 : 如 Recordset

  • 物件三要素

每個物件都由 屬性 . 事件 .方法 所構成.

3 4 2
3-4-2 物件的屬性
  • 屬性即[東西的特徵].

如 表單中之 Name屬性.Caption屬性….

  • 設定物件屬性值,可透過兩種方式:

1. 由屬性表直接設定之.

2. 由程式設定

語法: 物件名. 屬性名 = 屬性值

例: Form1.Caption = “維護表單”

3 4 3
3-4-3 物件的事件
  • 事件即是一個動作或狀況. 如: 按一下…

物件選項

事件

選項

3 4 4
3-4-4 物件的方法
  • 方法是指作用在物件上的內建指令或函數.
  • 如: data1.Recordset. MoveFirst

控制項物件

方法

資料存取物件

slide24
4-1 資料連結功能的控制項
  • 表單的設計 :
  • 色彩使用 -- 以灰色為標準色,輸入以白色表示
  • 控制項的配置與間距 --
  • 一般控制項高度 300
  • 垂直間距 60/120
  • 標籤對齊 -- 向左對齊
  • 標準字型 -- 9點,新細明體(中文字) ;
  • 8點,Courier/FixedSys
  • 使用 Frame 來組合相關控制項
slide25

Data 資料控制項

屬性 :

Connect

DatabaseName

RecordSource

ReadOnly 唯讀

Exclusive 獨佔

方法 :

Refresh 更新

事件 :

Reposition

label
Label 標籤

屬性 :

Caption

Font

FontName

FontSize

……….

Enable

方法 :

事件 :

slide27

TextBox 文字框

屬性 :

Text

Font

MultiLine 多行

ScrollBars 卷軸

PasswordChar

密碼

方法 :

事件 :

Change

GetFocus

slide28

OptionButton 選項鈕

---- 由Value屬性值(True/False)決定

屬性 :

Value 值

Caption 標題

Style 文字或圖

Picture 圖

事件 :

Click 選取

slide29

CheckBox 檢核框

  • 屬性 :
  • 同OptionButton
  • Value 值:
  • 0 = 不核取
  • 1 = 核取
  • 2 = 無效(灰色)
  • 可複選
slide30

Frame 框架

---- 控制項容器,以建立控制項群組

  • 必須使用剪下及貼上方式才能收納控制項
slide31

Line 線

屬性 : BorderColor 線段顏色

BorderStyle 線段樣式 0~6

BorderColor 線段寬度

Shape 方形

屬性 : BackColor 背景顏色

BackStyle 背景樣式 0 - 透明 1 - 不透明

Shape 形狀 0-矩形 1-正方 2-橢圓 3-圓

4-圓角矩形 5-圓角正方

slide32

ListBox 列表框

方法 :

AddItem 新增項目到列表框

RemoveItem刪除項目

屬性 :

Text

Sorted 排序

事件 :

slide33

ComboBox 複合框

方法 :

AddItem 新增項目到複合框

RemoveItem刪除項目

屬性 :

Text

Style 樣式

0 - 下拉式+文字框

1 - 固定式+文字框

2 - 單純式

slide34

DBList 資料連結列表框

  • 使用前須先「設定使用元件」 「Microsoft Data Bound
  • List Controls 5.0 」.
  • 屬性 :
  • RowSource 清單選項來源資料表
  • ListField 清單選項來源資料表中對應之欄位
  • DataSource 輸入資料連結資料表
  • DataSource 輸入資料連結資料表中對應之欄位
  • Text 點選之選項值
slide35

DBCombo 資料連結複合框

  • 屬性 :
  • RowSource 清單選項來源資料表
  • ListField 清單選項來源資料表中對應之欄位
  • DataSource 輸入資料連結資料表
  • DataSource 輸入資料連結資料表中對應之欄位
  • Text 點選之選項值
slide36

OLE 收納器控制項

  • 屬性 :
  • SizeMode 大小樣式 0 - 裁減
  • 1 - 不用依比例縮放
  • 2 - 自動調整收納器
  • 3 - 依比例縮放
  • DataSource
  • DataField
slide37
功能表設計
  • 概念
  • 可分「頂層功能表」及「快顯功能表」.
  • 功能項目後面加了(…),代表將會啟動對話方塊.
  • 功能項目後面加了(),代表另有子功能表.
  • 以分隔線區分功能項目類別.
slide38
功能表編輯器

屬性區

編輯區

slide39

屬性區

  • 標題 Caption …………. 功能名稱
  • 名稱 Name …………… 物件代表名稱
  • 快速鍵 ShortCut ……… 設定該功能之快速鍵
  • 核取設定 Checkd ……. 設定該功能項目是否為核
  • 取項目
  • 有效 Enabled ………….設定該功能項目是否有效
  • 可看見 Visble …………設定該功能項目是否為可
  • 程式: [功能項目Name].[屬性] = 值
slide40

編輯區

改變排列順序

改變排列層次

  • 對應命令

於表單功能項目下,撰寫其 Click事件程序

slide41
MDI 多重文件介面
  • 所謂 MDI (Muti Document Interface) 多重文件介面,指在一個主視窗之下,可以擁有許多子視窗.
  • 建立主表單(MDI):「專案」「新增MDI表單」.
  • 建立子表單:改變表單屬性 [MDIchid]值為 True 即可.
slide42
第五章 系統分析
  • 系統功能架構規劃.
  • 資料庫建立.
  • 逐一設計子功能流程.
  • 測試.
  • 修正.
slide43
5-1 系統功能架構規劃

啟始表單

登入表單

MDI主表單

資料維護

報表列印

視窗

說明

借書還書資料維護

密碼及使用者維護

出版社資料維護

圖書資料維護

會員資料維護

slide44
5-2 製作啟始表單
  • BorderStyle 表單框線樣式
  • ControlBox 控制圖示列顯示
  • Caption 標題
  • Picture 置入圖片
  • MDIChild 子表單設定
  • Timer 物件 -- 5秒後,關閉表單
  • Timer.interval = 秒 * 1000 觸動時間事件
slide45
表單展開方式
  • Me.Height 表單高度
  • Me.Width 表單寬度
  • Me.Left 表單左邊位置
  • Me.Top 表單上緣位置
  • Screen.Width 螢幕寬度
  • Screen.Height 螢幕高度
  • Show 顯示表單
  • Hide 隱藏表單
slide46
表單展開方式 - 上下展開

Dim i As Integer

For i = 1 To 850

Me.Height = i * 5 '表單高度 5 ~ 4250

Me.Width = 6000 ‘表單寬度 = 6000

'表單左邊位置

Me.Left = (Screen.Width - Me.Width) \ 2

'表單上緣位置

Me.Top = (Screen.Height - Me.Height) \ 2 - 1000

Me.Show

Next i

slide48
製作 螢幕保護程式 - 1
  • 螢幕保護程式其實為一執行檔( .exe )。
  • 祇要在 VB5 中 選取功能表中「檔案/製成 XXX .exe」將執行檔副檔名改為( .scr)即可。
  • 存放路徑為 C:\Windows或 C:\Windows\System
  • 概念
slide49

製作 螢幕保護程式 - 2

  • 程式設計技巧
  • 表單屬性:

Caption = 空白

BorderStyle = 0 - 沒有框線

WindowsState = 2 - 最大化

  • 以Timer 物件來控制動畫。
  • 在 Form 之 KeyDown() 及 MouseClick 事件,關閉表單。
slide50

製作 螢幕保護程式 - 3

  • 進階修正
  • 螢幕保護程式啟動時,其附帶參數可用來判斷啟動方式:

”/a ”或 ”/A ”─ 按下「密碼保護 > 變更」

”/c ”或 ”/C ”─ 按下「設定值」

”/p ”或 ”/P ”─ 按下「初次選取」

  • 使用 App.PrevInstance 來判斷是否已在執行程式,避免重複啟動。
slide51
6 - 2 資料維護 - 修改
  • 修改資料流程:

輸入搜查條件 。如 會員姓名 輸入 “William”

搜查資料錄符合之記錄

修改該筆記錄

slide52

輸入搜查條件方式:

  • 開啟新視窗
  • 利用現有輸入表單控制項
  • 搜尋資料方式:
  • 使用 FindFirst … 系列方法
  • 使用 SQL 搜尋語法
slide53

輸入搜查條件方式 (1) - 開啟新視窗

  • InputBox 函數

語法:InputBox(對話盒內容,標題)

傳回值:按[確定]鍵 = 輸入內容字串

按[取消]鍵 = “”

範例:

cFind = InputBox(“請輸入欲尋找的會員姓名”,“搜尋會員資料”)

slide54

輸入搜查條件方式 (2) - 找不到時…

  • 如何判斷是否找到 NoMatch 方法

語法:data1.Recordset.NoMatch

傳回值:True 找到 False 找不到

範例:

If data1.Recordset.nomatch then

MsgBox “查無符合 ” + “ 之會員資料 ! ”,vbOKonly,“提示訊息”

Endif

slide55

6 - 3 資料維護 - 刪除

  • 刪除資料流程:

輸入搜查條件 。如 會員姓名 輸入 “William”

搜查資料錄符合之記錄

確認是否刪除符合之記錄

刪除該筆記錄

移至下一筆資料記錄且更新資料

slide56

刪除資料方式

  • Delete方法

語法:data1.Recordset.Delete

範例:

data1.Recordset.Delete

slide57

確認刪除資料方式

  • MsgBox 函數

語法:MsgBox(對話盒內容,對話設定參數,標題)

傳回值:按鍵參數

範例:

If MsgBox(“你確定要刪除該筆記錄嗎 ?” , vbYesNo , “刪除確認”) = vbYes Then

data1.Recordet.Delete

Endif

slide58

移至下一筆並更新資料

  • data1.Refresh 方法

範例:

Data1.Recordset.MoveNext

Data1.Refresh

slide59

6 - 4 資料維護 - 瀏覽

  • 瀏覽資料控制項 -- DBGrid
  • 設定使用元件 -- 「Microsoft Data Bound Grid Control」。
  • 選用 DBGrid 控制項
  • DBGrid -- 常用屬性
  • DataSource
  • Align 排列方式
  • AllowAddNew 允許新增
  • AllowDelete 允許刪除
  • AllowUpdata 允許更新
slide60

6 - 5 SQL 語法

  • SQL (Structured Query Language)結構化查詢語言
  • 最基本的語法 --- 起手式
  • SELECT [欄位名稱] FROM [資料表名稱]
  • 範例:

SELECT * from [02-借書會員資料表]

SELECT [會員編號],[會員姓名] from [02-借書會員資料表]

所有欄位

slide61

[欄位名稱]及[資料表名稱] 須加上[].

  • SQL語言設定為 data控制項之RecordSource屬性
  • 範例:

data1.recordSource = “SELECT * from [02-借書會員資料表]”

data1.Refresh

  • 基本語法 (二) --- 條件篩選式
  • SELECT [欄位名稱] From [資料表名稱] Where 條件式
  • 範例:

Select * From [02-借書會員資料表] Where [會員姓名] Like “林*”

slide62

基本語法 (三) --- 排序式

  • SELECT [欄位名稱] From [資料表名稱] Order By [欄位]
  • 範例:

Select * From [02-借書會員資料表] Order By [會員姓名]

  • 預設排序為 [由小至大] , 後面加 Desc 改為 [由大至小]
  • 範例:

Select * From [02-借書會員資料表] Order By [會員姓名] Desc