資源描述:
《鍵盤(pán)和鼠標(biāo)事件過(guò)程》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、第11章鍵盤(pán)和鼠標(biāo)事件過(guò)程第11章鍵盤(pán)和鼠標(biāo)事件過(guò)程11.1鍵盤(pán)事件11.2KeyPress事件11.3KeyUp和KeyDown事件11.4鼠標(biāo)事件本章重點(diǎn)KeyPress、KeyDown、KeyUp事件及其參數(shù)的使用。KeyPress和KeyDown事件的區(qū)別。KeyPress、KeyDown、KeyUp事件的觸發(fā)順序。MouseDown、MouseUp、MouseMove事件的使用。MouseDown、MouseUp與Click事件的觸發(fā)順序。常用的3個(gè)鍵盤(pán)事件:11.1鍵盤(pán)事件什么是鍵盤(pán)事件?什么時(shí)候需要對(duì)鍵盤(pán)事件編程?KeyPr
2、ess事件KeyUp事件KeyDown事件11.2KeyPress事件按下或釋放有ASCII碼的鍵才會(huì)被觸發(fā)。方向鍵不觸發(fā)該事件,功能鍵不觸發(fā)該事件。事件參數(shù)觸發(fā)條件keyAscii(字符的ASCII碼數(shù)值),如按鍵“a”時(shí),keyAscii參數(shù)值為97。如果是“A”呢?事件過(guò)程形式PrivateSubText1_KeyPress(KeyAsciiasInteger)EndSub作用可以對(duì)輸入的數(shù)據(jù)進(jìn)行限制和檢查,從而保證輸入內(nèi)容的有效性。KeyUp:釋放任一鍵觸發(fā)該事件。KeyDown:按下任一鍵觸發(fā)該事件。11.3KeyUp和keyD
3、own事件觸發(fā)條件事件過(guò)程形式PrivateSubText1_KeyUp(KeyCodeasInteger,ShiftasInteger)EndSubPrivateSubText1_KeyDown(KeyCodeasInteger,ShiftasInteger)EndSub11.3KeyUp和keyDown事件事件過(guò)程參數(shù)Keycode(鍵盤(pán)掃描碼):物理鍵。①上檔字符和下檔字符相同,為下檔字符的ASCII碼。②小寫(xiě)字母和大寫(xiě)字母的keycode相同,為大寫(xiě)字母的Ascii碼?!盿”和“A”的keycode為65。③注意大鍵盤(pán)的“1”與數(shù)
4、字小鍵盤(pán)的“1”的keycode是不同的。Shift:根據(jù)按鍵時(shí)是否同時(shí)按下Shift、Ctrl和Alt返回一個(gè)整數(shù)。Shift:1Ctrl:2Alt:4例如:按鍵同時(shí)按下Shift+Ctrl,則Shift參數(shù)為3。KeyDown-〉KeyPress-〉keyUp觸發(fā)窗體的3個(gè)鍵盤(pán)事件的前提3個(gè)鍵盤(pán)事件的觸發(fā)順序:keyPreview設(shè)為T(mén)rue。其作用是可以利用窗體的鍵盤(pán)事件過(guò)程先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,再傳送給對(duì)象的鍵盤(pán)事件過(guò)程進(jìn)行處理。例11-211.4鼠標(biāo)事件常用的鼠標(biāo)事件什么是鼠標(biāo)事件?什么時(shí)候需要對(duì)鼠標(biāo)事件編程?Click和DblC
5、lick事件MouseDown事件:當(dāng)鼠標(biāo)的任意按鈕被按下時(shí)觸發(fā)MouseUP事件:當(dāng)鼠標(biāo)的任意按鈕被釋放時(shí)觸發(fā)MouseMove事件:當(dāng)鼠標(biāo)被移動(dòng)時(shí)觸發(fā)PrivateSubForm_MouseDown(ButtonasInteger,ShiftasInteger,XasInteger,YasInteger)MouseUP和MouseMove與此類(lèi)似。事件過(guò)程形式自定義鼠標(biāo)光標(biāo)Button:左鍵(1)右鍵(2)中鍵(4)Shift:Shift(1)Ctrl(2)alt(4)X、Y:當(dāng)前鼠標(biāo)指針的位置如果按鼠標(biāo)的時(shí)候同時(shí)按了shift和al
6、t鍵,則shift參數(shù)的值是?鼠標(biāo)光標(biāo):MousePointer屬性(設(shè)置光標(biāo)形狀)MousePointer=99MouseIcon=LoadPicture(“鼠標(biāo).ico”)事件過(guò)程參數(shù)Button,shift,x,y啟動(dòng)下列程序,在窗體上按功能鍵F1,輸出結(jié)果為_(kāi)____.PrivateSubForm_KeyDown(KeyCodeAsInteger,ShiftAsInteger)Print"F1Down";EndSubPrivateSubForm_KeyPress(KeyAsciiAsInteger)Print"F1Press";E
7、ndSub習(xí)題:PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=2ThenPrint"AAAAA"EndIfEndSubPrivateSubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Print"BBBBB"EndSub如果單擊鼠標(biāo)右鍵,輸出結(jié)果是______.小結(jié)KeyPress、KeyDown、KeyUp事件及參數(shù)KeyCode和K
8、eyAscii碼的區(qū)別。KeyPress和KeyDown事件的區(qū)別。KeyPress、KeyDown、KeyUp事件的觸發(fā)順序。MouseDown、MouseUp、MouseMove事件的使用