1樓:匿名使用者
你按p,就算你不寫任何**,系統也有一個操作:就是在文字框中插入"p"
keypress在系統插入p之前被執行,故text1.text="p"再加上你輸入的一個p,所以是"pp"
text2的change是系統插入p之後被執行,所以覆蓋了原來你插入的"p",變成了"p"
2樓:匿名使用者
keypress在按鍵顯示p之前產生,故text1.text="p"還有你輸入的一個p,所以有兩個
text2的change是你按鍵之後,所以只會有一個
3樓:匿名使用者
keypress執行時text1的文字顯示處理還沒有開始,在這時給text1複製了p。
當keypress事件處理完畢,處理text1的change事件時,系統才在text1的第一個位置插入一個p。
因此結果為pp。
第二個事件,實在text2的內容被系統改為p之後,才執行change事件,因此最後的結果是p替換了p變成只有p了。
textbox是在keypress事件之後將鍵入文字放入文字框的,因此出現了上述差異。
提示,這兩個例子用於研究可以,請不要用於實踐。他們干擾了系統的處理,會導致各種問題。
如果要處理按鍵,請在keydown和keyup中處理。
vb keypress事件怎麼用?
4樓:匿名使用者
用法如下
private sub form_keypress(keyascii as integer)
print chr(keyascii);
end sub
5樓:匿名使用者
keypress就是獲取你所按的鍵的ascii碼,鍵盤上打的字可以直接在text控制元件中顯示出來。
6樓:匿名使用者
獲取字元 傳送給vb程式
vb keypress事件怎麼觸發?
7樓:匿名使用者
keyscii寫錯了,bai少了a
dim x%, y%, z%
private sub text1_keypress(keyascii as integer)
dim c$
c = chr(keyascii)
if keyascii = 13 then'如果回du車zhi不想計算dao在內的話,就放
版在前面權
print x, y, z
exit sub
end if
if ucase(c) >= "a" and ucase(c) <= "z" then
x = x + 1
elseif c >= "0" and c <= "9" theny = y + 1
else
z = z + 1
end if
end sub
在vb中keydown和keypress有什麼區別
keypress keydown keyup這三個事件都在按下鍵盤時觸發,但是區別在於後兩個事件是第一個的拆解。keypress是按下鍵盤的全過程,keydown僅是在鍵盤按下去但還沒彈起之前觸發,即前半段時間,而keyup是在鍵盤按下去之後彈起的過程中觸發,即後半段時間觸發。另外keyypress...
關於VB程式設計的問題 高手請進,急求一個VB的問題!高手請進。
加一個文字框text1,一個按鈕command1private sub command1 click if trim text1.text thenmsgbox 請輸入數字 text1.setfocus else msgbox val trim text1.text 100 米 left cstr ...
急求 VB程式設計題目,謝謝,求1道小學VB程式設計題目 謝謝
dim a 0 to 3 private sub command1 click index as integer list1.additem index end sub private sub command2 click dim n,m m 0 n 0 for i 0 to 3 for j 0 t...