键盘滑鼠功能表

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

VisualBasic6.0學習範本鍵盤事件透過「文字方塊」物件可處理使用者由鍵盤輸入的資料。有時候要處理一些較特殊的按鍵或組合按鍵時,或要檢查到底是按下了那個按鍵,就必須以更直接的方式來處理。鍵盤的處理工作:事件名稱說明物件_KeyPress在指定物件上收到由鍵盤按鍵的字元。僅能回應按鍵動作,無法判斷目前按鍵是否按住或放開。物件_KeyDown在指定物件上偵測到鍵盤有鍵被按住。物件_KeyUp在指定物件上偵測到鍵盤上被按住的鍵已放開KeyPress事件合法的按鍵KeyAscii碼值1.可顯示的鍵盤字元字元的ASCII碼2.Ctrl+A至Ctrl+Z1至263.Enter和Ctrl+Enter13和104.BackSpace和Ctrl+BackSpace8(倒退鍵)和1275.空白鍵9KeyPress動作KeyPress語法PrivateSub物件_KeyPress(KeyAsciiAsInteger)【說明】1.KeyAscii:傳回鍵盤上被按下鍵的ASCII碼。2.如果在該事件程序中,有更改KeyAscii參數內容,則顯示的字元亦跟著更改。3.若將KeyAscii的內容設為0,會清除剛才輸入的字元。設計三個文字方塊,分別對鍵入的字元加以限制,如下圖所示(程式碼請參照光碟)1.在第一個文字方塊內,允許鍵入任意字元,但只將小寫字母改成大寫,其它字元維持不變。2.在第二個文字方塊內方式同上,但只將大寫字母改成小寫字元,其它字元維持不變。3.在第三個文字方塊內,只允許鍵入數字及小數點(如3.14159),如果鍵入的不是數字,則游標不移動且不顯示所鍵入的文字。lblBigChlblSmallChlblOnlyNumcmdClstxtBigChtxtSmallChtxtOnlyNumcmdEnd物件屬性預設名稱Name(物件名稱)Caption(標題)Text(文字)Font/大小(字型大小)Form1f8_2_1f8_2_1-(預設值)Label1lblBigCh英文字大寫顯示:-12Label2lblSmallCh英文字小寫顯示:-12Label3lblOnlyNum只能鍵入數字:-12Text1txtBigCh-空白12Text2txtSmallCh-空白12Text3txtOnlyNum-空白12Command1cmdCls清除-12Command2cmdEnd結束-12KeyDown和KeyUp事件1.KeyDown動作當你正按下鍵盤按鍵不放的時候,就會觸動KeyDown事件。2.KeyUp動作當你放開已按下的鍵盤按鍵時,就會觸動KeyUp事件注意:1.KeyUp和KeyDown事件程序能處理KeyPress事件所無法處理的按鍵,如功能鍵、編輯鍵和組合鍵。2.KeyPress事件可以傳回一個字元的ASCII鍵碼,但是無法得知目前鍵盤是持續按著,還是按一下就放開。3.如輸入一個字元,則三個事件的發生順序為KeyDown事件,接著為KeyPress事件,最後是KeyUp事件。鍵盤掃瞄碼(KeyCode)說明:1.字母、數字鍵對應的掃描碼如下:按鍵掃瞄碼A~Z65~900~948~572.鍵盤最右邊九宮格方向鍵對應的掃描碼如下:3638337Home8↑9PgUp3712394←56→3540341End2↓3PgDn掃描碼掃描碼掃描碼PrivateSub物件_KeyDown(KeyCodeAsInteger,ShiftAsInteger)PrivateSub物件_KeyUp(KeyCodeAsInteger,ShiftAsInteger)k字母、數字鍵的掃描碼如下:按鍵掃瞄碼A~Z65~90a~z97~1220~948~57l一般特殊鍵的掃描碼如下:112113F1F22.Shift:此傳回值為,,三種鍵是否被按下的情形,如下:Shift值鍵盤上被按下的鍵0此三種鍵沒被按下1鍵被按下2鍵被按下3與鍵同時被按下4鍵被按下5與鍵同時被按下6與鍵同時被按下7,,三鍵同時被按下透過按鍵盤的方向鍵,來控制圖片移動的方向。(程式碼請參照光碟)按住鍵盤上任何一個方向鍵時,上圖汽車圖片會隨按鍵的方向移動。例如下圖是按住鍵盤鍵,圖片向右移動情形,並且將參數的KeyCode與Shift傳回值顯示出來。若放開按下之方向鍵,則汽車圖片立即返回起始位置。picCarcmdEnd物件屬性預設名稱Form1Picture1Command1Name(物件名稱)f8_3_1picCarcmdEndCaption(標題)f8_3_1-結束Font/大小(字型大小)(預設值)(預設值)12Picture(圖形)-[點陣圖]-BorderStyle(邊界形式)(預設值)0-None-滑鼠介紹事件名稱說明物件_Click在物件上按滑鼠左鍵一下。物件_DblClick在物件上快按滑鼠左兩下。物件_MouseDown在物件上測到有滑鼠鍵被按住。物件_MouseMove在物件上測到滑鼠正在移動。物件_MouseUp在物件上測到已按住之滑鼠鍵被放開Click事件使用時機:1.用來選取物件移動滑鼠指標到某個圖示上按一下,使圖示名稱反白,或從表列清單方塊中的某選項上按一下使該選項反白。2.使物件獲得控制權,以利由鍵盤鍵入資料如移動滑鼠指標到文字方塊內,按一下滑鼠左鍵,使文字方塊內出現閃爍的插入點游標。3.執行指令如按指令按鈕、圖示鈕或功能表內指令選項。DbClick事件使用時機:1.開啟資料夾視窗如:移動滑鼠到「我的電腦」圖示上快按滑鼠二下,開啟「我的電腦」視窗。2.執行應用程式如:移動滑鼠到檔案總管中「小畫家」程式圖示上快按滑鼠二下,執行「小畫家」程式。3.快速選取清單方塊選項如:若要安裝一個HPLaserJet5P印表機,可以先選取[開始/設定(S)/印表機(P)]指令,按二下新增印表機在製告廠商(M)清單中選HP,然後在印表機(P)清單中選取「HPLaserJet5P」項目,再按鈕進行下一步設定;另一種方式是直接在「HPLaserJET5P」項目上按二下直接選取後進行下一步驟。MouseDown、MouseUp與MouseClick事件PrivateSub物件_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)PrivateSub物件_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)PrivateSub物件_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Button的值被按下或放開之滑鼠鍵0沒有滑鼠被按下(此值只有在MouseMove事件存在)。1按左鍵。2按右鍵。4按中間鍵。1.Button參數:表示滑鼠被按下或放開的狀態,如下:2.Shift參數:當滑鼠被按下或放開時,鍵盤,或是否同時被按下:Shift的值鍵盤上被按之鍵0,,三鍵皆沒按。1鍵。2鍵。4鍵。3.X參數:表示當滑鼠鍵被按下或放開時,指標所在的X坐標值。4.Y參數:表示當滑鼠鍵被按下或放開時,指標所在的Y坐標值。設計一個能利用滑鼠來畫直線與方框的繪圖程式,如下圖所示(程式碼請參照光碟)1.程式啟動後,出現一個空白的「表單」和鈕。2.移動滑鼠指標到「表單」內任一位置,按一下滑鼠左鍵,繪出一點。而且該點可以是畫直線的起點或是畫方框頂角的起點。3.畫直線:若接著在「表單」內移動滑鼠到其它空白位置,按一下滑鼠右鍵,繪出一條直線。4.結束:按鈕,結束程式執行。cmdEnd物件屬性預設名稱Name(物件名稱)Caption(標題)Font/大小(字型大小)Form1f8_7_1f8_7_1(預設值)Command1cmdEnd結束12拖曳與放置1.手動模式:在按住物件移動滑鼠時並不會馬上有拖曳效果,需在程式中使用Drag方法來設定物件是否可被拖曳。2.自動模式:只要按住物件移動滑鼠即可有拖曳效果。設計拖曳與放下過程的程式碼,和下表中的兩個屬性、兩項事件和一個方法有關:項目類型說明DragMode屬性設定物件被拖曳的模式。有兩個設定值,如下:0–由程式碼控制(預設值)1–自動DragIcon屬性當物件被拖曳時,要用什麼圖示來顯示。若無設定(none)則以箭頭指標搭配灰色方框。DragDrop事件當拖曳甲物件至乙物件處放下甲物件時,觸動乙物件對該事件的反應。DragOver事件當拖曳甲物件越過乙物件上方時,觸動乙物件對該事件的反應。Drag方法Drag方法可用來設定物件可否被拖曳。DragDrop事件PrivateSub物件_DragDrop(SourceAsControl,XAsSingle,YAsSingle)【說明】1.物件:指目的物件,可包含控制項、表單。2.Source:指來源物件所代表的名稱,即被拖曳之控制項。SourceAsContrl就是宣告Source變數為一控制項。3.X,Y:為目前指標的坐標。DragOver事件PrivateSub物件_DragOver(SourceAsControl,XAsSingle,YAsSingle,StateAsInteger)DragOver事件比DragDrop多一個State參數,其參數值所代表意義如下:State值說明0進入,即指標剛進入物件的範圍。1離開,即指標剛離開物件的範圍。2越過,即指標在物件範圍內移動。自動模式若物件之DragMode屬性內容被設定為1-自動,則物件在拖曳期間物件呈灰色方框。設計一個能在自動模式下拖曳汽車圖片,並將該圖片放入空白圖片方塊內的程式(程式碼請參照光碟)1.拖曳汽車圖示的過程如下圖所示。2.將汽車圖示拖曳至目的地(即空白圖片方塊內),如下圖所示:picSourcecmdEndpicTarget屬性物件預設名稱Form1Picture1Picture2Command1Name(物件名稱)f8_8_1picSourcepicTargetcmdEndCaption(標題)f8_8_1--結束BorderStyle(邊界形式)(預設值)0-不加邊框(預設值)-Picture(圖形)-[點陣圖](預設值)-DragMode(拖曳模式)(預設值)1-自動(預設值)(預設值)手動模式把物件之DragMode屬性設定為0-手動,物件就在固定位置,無法像自動模式一樣隨時被拖曳。若某物件需要被拖曳,則就須由程式來控制。語法如下:物件.DragAction1.Action為決定物件是否能被拖曳的動作值Action的值動作說明0取消拖曳。若在拖曳期間執行此敘述,則拖曳失效,物件回原處。1允許拖曳。2結束拖曳,並觸動DragDrop事件。2.宣告允許拖曳最適當的時機是按下滑鼠鍵時。即在物件_MouseDown事件程序中下達物件.Drag1的敘述。3.宣告結束拖曳最適當的時機是放開滑鼠鍵時,即在物件_MouseUp事件程序中下達物件.Drag2的敘述。在手動模式下,拖曳資料夾圖示,觀察它越過資料夾櫃子不破壞背景圖和將資料夾放入櫃子情形。(程式碼請參照光碟)1.程式執行時,資料夾圖示在表單左上方,二個資料夾櫃子在右邊,其中一個未打開抽屜圖示,一個打開下面抽屜圖示,如下圖所示:2.按鈕,資料夾圖下移,而未打開抽屜資料夾櫃圖示移至中間位置,而打開抽屜資料夾櫃圖示隱藏不顯示於表單中,如下圖所示:3.滑鼠指標移至資料夾圖示上,按滑鼠左鍵不放,拖曳滑鼠,則資料夾圖隨著滑鼠移動而改變位置。4.資料夾圖示移至表單內空白處時,放開滑鼠按鍵,則資料夾圖示停留在新位置。5.拖曳資料夾圖示時,當滑鼠指標(螢幕並未顯示滑鼠指標形狀)剛進入資料夾櫃子時,在櫃子下面的標籤上顯示「進入」文字,只是在櫃子邊緣線才會顯示,若移動滑鼠太快會看不清楚。6.拖曳資料夾圖示時,當滑鼠指標在櫃子圖示中時,在標籤上顯示「越過」文字。此時櫃子圖示改為有打開抽屜木櫃圖示。7.拖曳資料夾圖示時,當滑鼠指標離開櫃子圖示時,標籤上顯示「離開」文字。8.何時進入「進入」,何時才

1 / 30
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功