266 lines
7.7 KiB
HTML
266 lines
7.7 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
|
<title>keyCode | reference | Processing.js</title>
|
|
<link rel="stylesheet" href="../../css/bootstrap.css" type="text/css" />
|
|
<link rel="stylesheet" href="../../css/syntax.css" type="text/css" />
|
|
<link rel="stylesheet" href="../../css/processing-js.css" type="text/css" />
|
|
<script src="../../js/processing.min.js" type="text/javascript"></script>
|
|
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
|
|
<script src="../../js/jquery.tweet.min.js" type="text/javascript"></script>
|
|
<script src="../../js/tabselector.js" type="text/javascript"></script>
|
|
<script src="http://cdn.webglstats.com/stat.js" defer="defer" async="async"></script>
|
|
<script type="text/javascript">
|
|
// Only do tracking on the actual site
|
|
if (document.location.host === "processingjs.org") {
|
|
var _gaq = _gaq || [];
|
|
_gaq.push(['_setAccount', 'UA-8565070-1']);
|
|
_gaq.push(['_trackPageview']);
|
|
(function() {
|
|
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
|
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
|
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
|
}());
|
|
}
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<div class="header">
|
|
<a href="http://processingjs.org/"><img src="../../images/header.png" width="177" height="42"></a>
|
|
</div>
|
|
<span class="tagline">a port of the Processing Visualization Language</span>
|
|
|
|
<div class="navbar">
|
|
<canvas width="940px" height="78px" data-processing-sources="/sketches/bannerSketch.pde"></canvas>
|
|
<ul>
|
|
<li><a href="http://processingjs.org/"><span>home</span></a></li>
|
|
<li><a href="http://processingjs.org/download/"><span>download</span></a></li>
|
|
<li><a href="../index.html"><span>reference</span></a></li>
|
|
<li><a href="http://processingjs.org/exhibition/"><span>exhibition</span></a></li>
|
|
<li><a href="http://processingjs.org/learning/"><span>learning</span></a></li>
|
|
<li><a href="http://processingjs.org/articles/"><span>articles</span></a></li>
|
|
<li><a href="http://processingjs.org/community/"><span>community</span></a></li>
|
|
<li><a href="http://processingjs.org/blog/"><span>blog</span></a></li>
|
|
</ul>
|
|
<a class="viewsource" href="http://processingjs.org/sketches/bannerSketch.pde">view source</a>
|
|
</div>
|
|
|
|
<div class="page row">
|
|
<div class="span11">
|
|
<table cellpadding="0" cellspacing="0" border="0" class="ref-item">
|
|
|
|
<tr class="name-row">
|
|
|
|
<th scope="row">Name</th>
|
|
|
|
<td><h3>keyCode</h3></td>
|
|
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Examples</th>
|
|
|
|
<td><div class="example"><pre>int x = 90;
|
|
|
|
|
|
|
|
void draw() {
|
|
|
|
noStroke();
|
|
|
|
rect(x, 10, 3, 80);
|
|
|
|
}
|
|
|
|
|
|
|
|
void keyPressed() {
|
|
|
|
if (keyCode == BACKSPACE) {
|
|
|
|
x = x - 5;
|
|
|
|
}
|
|
|
|
}</pre></div><hr class="noShade" noshade="noshade" size="1" /><div class="example"><pre>color fillVal = color(126);
|
|
|
|
|
|
|
|
void draw() {
|
|
|
|
fill(fillVal);
|
|
|
|
rect(25, 25, 50, 50);
|
|
|
|
}
|
|
|
|
|
|
|
|
void keyPressed() {
|
|
|
|
if (key == CODED) {
|
|
|
|
if (keyCode == UP) {
|
|
|
|
fillVal = 255;
|
|
|
|
} else if (keyCode == DOWN) {
|
|
|
|
fillVal = 0;
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
fillVal = 126;
|
|
|
|
}
|
|
|
|
}</pre></div></td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
|
|
|
|
<th scope="row">Description</th>
|
|
|
|
<td>The system variable <b>keyCode</b> is used to detect special keys such as the UP, DOWN, LEFT, RIGHT arrow keys and ALT, CONTROL, SHIFT, BACKSPACE, TAB, ENTER, RETURN, ESC, and DELETE. When checking for UP, DOWN, LEFT, RIGHT, ALT, CONTROL, and SHIFT, it's first necessary to check and see if the key is coded. This is done with the conditional "if(key == CODED) {}" as shown in the second example. The keys included in the ASCII specification (BACKSPACE, TAB, ENTER, RETURN, ESC, and DELETE) do not require checking to see if they key is coded. If you're making cross-platform projects, note that the ENTER key is commonly used on PCs and Unix and the RETURN key is used instead on Macintosh. Check for both ENTER and RETURN to make sure your program will work for all platforms.</td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Syntax</th>
|
|
|
|
|
|
|
|
<td><pre>keyCode</pre></td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Parameters</th>
|
|
|
|
<td><table cellpadding="0" cellspacing="0" border="0">
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row"></th>
|
|
|
|
|
|
|
|
<td></td>
|
|
|
|
</tr>
|
|
|
|
</table></td>
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Usage</th>
|
|
|
|
<td>Web & Application</td>
|
|
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
<tr class="">
|
|
|
|
<th scope="row">Related</th>
|
|
|
|
<td>
|
|
|
|
<a href="../key.1">key</a><br />
|
|
|
|
<a href="../keyPressed.1">keyPressed</a><br />
|
|
|
|
<a href="../keyPressed_.1">keyPressed()</a><br />
|
|
|
|
<a href="../keyReleased_.1">keyReleased()</a><br />
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</table>
|
|
|
|
|
|
<div class="cclicense">
|
|
<p>This reference is licensed under the CC BY-NC-SA 2.0 license:</p>
|
|
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.0/">
|
|
<img alt="Creative Commons License" border="0" src="../../images/somerights20.gif" />
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<div class="sidebar span4">
|
|
<h3><a href="http://processingjs.org/download/">Downloads</a></h3>
|
|
<ul>
|
|
<li><a href="http://processingjs.org/download/">Download the latest version of Processing.js!</a></li>
|
|
</ul>
|
|
|
|
<h3><a href="http://processingjs.org/articles/">Articles</a></h3>
|
|
<ul>
|
|
<li><a href="http://processingjs.org/articles/jsQuickStart.html">Quick Start - JavaScript Developer</a></li>
|
|
<li><a href="http://processingjs.org/articles/p5QuickStart.html">Quick Start - Processing Developer</a></li>
|
|
<li><a href="http://processingjs.org/articles/RenderingModes.html">Rendering Modes</a></li>
|
|
<li><a href="http://processingjs.org/articles/PomaxGuide.html">Pomax's Guide to processing-js</a></li>
|
|
</ul>
|
|
|
|
<h3><a>Web IDEs</a></h3>
|
|
<ul>
|
|
<li><a href="http://sketchpad.cc">Sketchpad.cc</a></li>
|
|
<li><a href="http://processingjs.org/tools/processing-helper.html">Processing.js Helper</a></li>
|
|
<li><a href="http://www.openprocessing.org">OpenProcessing.org</a></li>
|
|
</ul>
|
|
|
|
<h3><a href="http://processingjs.org/community/">Community</a></h3>
|
|
<ul>
|
|
<li><a href="irc://irc.mozilla.org/processing.js">IRC Channel</a></li>
|
|
<li><a href="http://processing-js.lighthouseapp.com/">Bug Tracker</a></li>
|
|
<li><a href="http://github.com/processing-js/processing-js/">Github Repository</a></li>
|
|
<li><a href="http://groups.google.com/group/processingjs">Google Group</a></li>
|
|
<li><a href="http://zenit.senecac.on.ca/wiki/index.php/">Open Source @ Seneca</a></li>
|
|
</ul>
|
|
|
|
<h3><a href="http://twitter.com/processingjs">Twitter Feed</a></h3>
|
|
<div class="twitter"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="footer">
|
|
Processing is an open visualization language developed by
|
|
<a href="http://benfry.com/">Ben Fry</a> & <a href="http://reas.com/">Casey Reas</a>,
|
|
and originally ported to Javascript by
|
|
<a href="http://ejohn.org/blog/processingjs/">John Resig</a>.
|
|
Processing.js is maintained by the Processing.js team.
|
|
</div>
|
|
</div>
|
|
<a href="http://github.com/processing-js/processing-js/">
|
|
<img style="position: absolute; top: 0; right: 0; border: 0;" src="../../images/forkme-right-orange.png" alt="Fork me on GitHub">
|
|
</a>
|
|
</body>
|
|
</html>
|