鍵盤對映(按鍵連續操作)
對映是指按住鍵後程式連續操作。
而讀鍵是指按一次鍵程式操作。
原理:每一行對映的數值是和二進位制有關的,文曲行將鍵盤對映從上倒下那一行的按鍵被按下用0/1表示,1表示沒被按下,0表示被按下,這就是為什麼平時記憶體對映的值都是255的原因了,也就是說,當最下面一排的按鍵中有鍵被按下,則對應對映變為01111111就是127,當倒數第二排的按鍵被按下,則對映變為10111111就是191,當不在同一排的按鍵同時被按下時(同一對映區的),則處理法則也相同,即同時由1變成0如[符號][b|1][g|4][t|7]鍵被同時按下時,對映變為00000111就是7。其他以此類推。如果不是同一行的,且不屬於同乙個對映,則單獨算就是了!
如:if peek(188)=127 then gosub 200
就是指若按住向左鍵不放則連續執行200行的子程式。
括號內的是下表的豎行上對應的數字,所等於的值是下表橫行上對應的數字。
nc1020鍵盤對映詳表 :
██127---191--123--239--247---251
188 左---上頁---k----i---右-----?
189 =------m----j----u---下頁---?
190 。-----n----h----y---輸入--發音
191 符號---b----g----t----p----報時
192 跳出---v----f----r---下-----f4
193 輸入法-c----d----e---上-----f3
194 中英數-x----s----w----l-----f2
195 求助---z----a----q----o-----f1
這個表是有規律的,127豎行對應文曲星鍵盤最底下一行的鍵,
191豎行對應倒數第二行,223對應倒數三行,239對應倒數四行,247
每行剩下的鍵,251最右邊一豎排鍵。?指沒查到。
10 x=76:y=44
20 if peek(193)=247 goto 70
30 if peek(192)=247 goto 120
40 if peek(188)=247 goto 170
50 if peek(188)=127 goto 220
60 beep :goto 20
70 circle x,y,4,1,0
80 y=y-1
90 if y〈 1 then y=y+80
100 circle x,y,4,1,1
110 goto 20
120 circle x,y,4,1,0
130 y=y+1
140 if y〉79 then y=y-80
150 circle x,y,4,1,1
160 goto 20
170 circle x,y,4,1,0
180 x=x+1
190 if x〉159 then x=x-160
200 circle x,y,4,1,1
210 goto 20
220 circle x,y,4,1,0
230 x=x-1
240 if x〈 1then x=x+160
250 circle x,y,4,1,1
260 goto 20
這樣就可以通過方向鍵對映來連續控制這個小黑圓移動了。
只要對映值的橫縱兩個值均不相等,就可以同時對映,
文曲星最多可同時對映6個鍵。
就是你同時按下6個鍵都會有反應。
再轉乙個帖說明一下:
[**]螢幕動畫控制示例
1 cls:graph:print "螢幕動畫控制示例":locate 3,10 :print "製作:追風":locate
4,10
10 print "鳴謝:lp":b$=inkey$:cls
20 xz=2 :xy=14 :xsd=8 :yzy=6 :ys=4 :yd=12 :n=0 :ex=176 :ey=76 :circle ex,ey,4
25 circle ex,ey,2,0,0 :xzz=xz :yzyy=yzy :xyy=xy :ydd=yd :yss=ys :xsdd=xsd
30 circle xz,yzy,2,1 :circle xy,yzy,2,1 :circle xsd,ys,2,1 :circle xsd,yd,4,1
40 for i=1 to 2 step 0 :n=0
50 if peek(195)=247 then gosub 60
51 if peek(196)=247 then gosub 70
52 if peek(191)=127 then gosub 80
53 if peek(191)=247 then gosub 90
54 if peek(199)=155 then poke 199,155
55 if n>0 then 123 else 140
60 yzyy=yzyy+4-(yzyy>=70)*4 :yss=yss+4-(yss>=68)*4 :ydd=ydd+4-(ydd>=76)
*4 :n=1 :return
70 yzyy=yzyy-4+(yzyy<=6)*4 :yss=yss-4+(yss<=4)*4 :ydd=ydd-4+(ydd<=12)
*4 :n=1 :return
80 xzz=xzz-4+(xzz<=2)*4 :xyy=xyy-4+(xyy<=14)*4:xsdd=xsdd-4+(xsdd<=8)
*4 :n=1 :return
90 xyy=xyy+4-(xyy>=158)*4 :xzz=xzz+4-(xzz>=146)*4 :xsdd=xsdd+4-(xsdd>=152)
*4 :n=1 :return
123 circle xz,yzy,2,1,0 :circle xy,yzy,2,1,0
125 circle xsd,ys,2,1,0 :circle xsd,yd,4,1,0
126 xz=xzz :yzy=yzyy :xy=xyy :yd=ydd :ys=yss :xsd=xsdd
130 circle xz,yzy,2,1 :circle xy,yzy,2,1 :circle xsd,ys,2,1 :circle xsd,yd,4,1
140 exd=0 :eyd=0 :fx=int(rnd(8)*2)
150 while exd=0 and eyd=0
160 if ex>xsd and fx=0 then exd=-4
170 fx=int(rnd(9)*2)
180 if exyd and fx=1 then eyd=-4
210 fx=int(rnd(1)*2)
220 if ey225 if ex=xsd and ey=yd then 280
226 if abs(int(ex-xsd))<4 and abs(int(ey-yd))<4 then 280
230 fx=int(rnd(11)*2):wend
245 circle ex,ey,4,1,0
250 ex=ex+exd :ey=ey+eyd
260 circle ex,ey,4,1 :circle ex,ey,2,0,0 :goto 300
280 beep:cls:print "game over":b$=inkey$
290 end
VIM鍵盤對映
使用 map命令,可以將鍵盤上的某個按鍵與vim的命令繫結起來。例如使用以下命令,可以通過f5鍵將單詞用花括號括起來 map i其中 i增加字元 最後退至命令狀態。在執行以上命令之後,游標定位在乙個單詞上 例如amount 按下f5鍵,這時字元就會變成的形式。使用下表中不同形式的map命令,可以針對...
Android鍵盤對映
對於按鍵事件,android呼叫 mdevices i layoutmap map 進行對映。對映實際是由 keylayoutmap map完成的,keylayoutmap類裡讀取配置檔案qwerty.kl,由配置 檔案 qwerty.kl 決定鍵值的對映關係。你可以通過修 改.developmen...
Android鍵盤對映
對於按鍵事件,android呼叫 mdevices i layoutmap map 進行對映。對映實際是由 keylayoutmap map完成的,keylayoutmap類裡讀取配置檔案qwerty.kl,由配置 檔案 qwerty.kl 決定鍵值的對映關係。你可以通過修 改.developmen...