回 帖 发 新 帖 刷新版面

主题:征集控制键的ASCII码?

请问在程序中能同时捕捉多少个键?
己知的 控制键 对应的 ASCII码
        TAB            8
       退格键          9
       回车键         13
        ESC           27
       空格键         32

注意:征集的控制键必须能用于以下程序,KEY(X)在此不作考虑

  DO WHILE 1=1
     a%=ASC(inkey$)
     SELECT CASE a%
            CASE 8
                 PRINT "您按下的是TAB键"
            CASE 9
                 PRINT "您按下的是退格键"
            CASE 13
                 PRINT "您按下的是回车键"
            CASE 27
                 PRINT "您按下的是ESC键"
                 cls : system
            CASE 32
                 PRINT "您按下的是空格键"
            '请大家追加
     END SELECT
  LOOP
我只知道这么多,请大家帮忙完善以上程序(最好能列出101标准键盘的每一个键 [em12] )

回复列表 (共4个回复)

沙发

请在QB环境下按 <Shift> + <F1> , < C >, < ENTER >,< A > ,< ENTER > 键参阅ASCII码表或KeyScanCode扫描码表

板凳

扫描码方法:
CHR$(KeyBoardFlag)+CHR$(KeyBoardScanCode)

3 楼

KEY(1-25,30,31)一共27个键已经用完了还不够,所以我说KEY不作考虑。
不知道你们对此有没有什么好的办法?

4 楼

咖啡猪同学
这个问题实在太简单了,
简单到我都差点不好意思说出来了.

我明白你是想知道在你的程序里捕捉到哪些按键可以用
你随便翻翻旧贴都能看到一大堆的.
我还是厚着脸皮帮帮你,别要给人拿鸡蛋来扔我就好了
(顺便告诉大家,我现在改喜欢吃西红柿了)

DO
  do:k$=inkey$:loop while k$=""   
  l=len(k$)
  print "你按键的字符长为";l;
  print "字符值为chr$(";asc(k$);")";
  if l>1 then print "+chr$(";asc(right$(k$,1));")的扩展扫描键."
LOOP until k$=chr$(27)    'ESC键退出

我来回复

您尚未登录,请登录后再回复。点此登录或注册