Classes | UGens > User interaction

KeyState : UGen : AbstractFunction : Object

Respond to the state of a key
Source: MacUGens.sc

Description

Respond to the state of a key.

NOTE: Note that this UGen does not prevent normal typing. It therefore may be helpful to select a GUI window rather than an SC document when using KeyState, as the latter will be altered by any keystrokes.

Class Methods

KeyState.kr(keycode: 0, minval: 0, maxval: 1, lag: 0.2)

Arguments:

keycode

The keycode value of the key to check. This corresponds to the keycode values passed into the keyDownActions of SCViews. See the example below.

minval

The value to output when the key is not pressed.

maxval

The value to output when the key is pressed.

lag

A lag factor.

Inherited class methods

Instance Methods

Inherited instance methods

Examples

s.boot;

// execute the code below to find out a key's keycode
// the char and keycode of any key you press will be printed in the post window
(
w = Window.new("I catch keystrokes");
w.view.keyDownAction = { arg view, char, modifiers, unicode, keycode;  [char, keycode].postln; };
w.front;
)

// then execute this and then press the 'j' key
(
w.front; // something safe to type on
{ SinOsc.ar(800, 0, KeyState.kr(38, 0, 0.1)) }.play;
)