Disable all Keys Except...

6 views (last 30 days)
Brett
Brett on 4 Dec 2012
Edited: G GK on 19 Feb 2019
Hi, I'm using psychtoolbox and I want to deactivate every key except for the ones related to my program. I know I can writing something like this:
KeysIWantDisable = [4 7 8] % 4 5 7 represent keylog values
DisableKeysForKbCheck(KeysIWantDisable)
But I was wondering if there was a way to say "disable all the keys except..." because I won't really want to keylog the entire keyboard when I'm only using 4 keys.
Any ideas will be much appreciated, you guys have made this programming experience awesome so far, Brett

Answers (3)

Kmy
Kmy on 23 Feb 2018
It's way too late but might be useful for somebody else. You can use :
DisableKeysForKbCheck(setdiff([1:256], [keysIWantEnabled]));

Jason Ross
Jason Ross on 4 Dec 2012
Why not just enumerate the keys you want to accept, and not proceed in execution until you get one of those?
You aren't disabling the keys, but you are still having largely the same effect.
This approach doesn't prevent the use of control-c or window shortcuts (function keys, alt-key combinations), either. But catching those can take extra levels of compilcation you may not want to deal with.

G GK
G GK on 19 Feb 2019
Edited: G GK on 19 Feb 2019
How about disabling the Microsoft/Desktop key?

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!