Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Events Racket gui键事件:忽略大小写_Events_Scheme_Racket - Fatal编程技术网

Events Racket gui键事件:忽略大小写

Events Racket gui键事件:忽略大小写,events,scheme,racket,Events,Scheme,Racket,我对racket还很陌生,我正在尝试编写一个游戏,目前我正在编写我的输入控制器。 我正在使用gui/canvas键事件()例如 然而,我的一个问题是钥匙代码区分大小写,例如“a”不同于“a”,因此如果caps lock打开,则我的控制器不工作。无论如何,是否有这样的方法可以避免为每个键编写(case key code[(#\a#\a)]) (define (key-downcase-key k) (cond [(char? k) (char-downcase k)] [e

我对racket还很陌生,我正在尝试编写一个游戏,目前我正在编写我的输入控制器。 我正在使用gui/canvas键事件()例如


然而,我的一个问题是钥匙代码区分大小写,例如“a”不同于“a”,因此如果caps lock打开,则我的控制器不工作。无论如何,是否有这样的方法可以避免为每个键编写
(case key code[(#\a#\a)])

(define (key-downcase-key k)
  (cond
     [(char? k) (char-downcase k)]
     [else      k]))
然后使用

(case (key-downcase k)
  [(#\a) ... as before ...])

谢谢!我不知道关键代码是普通字符。
(case (key-downcase k)
  [(#\a) ... as before ...])