From WikiChip
Difference between revisions of "mirc/on events/on keyup"
< mirc‎ | on events

m (bot: sort-key added to category)
m (Parameters: Link access levels)
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
The '''ON KEYUP''' event is triggered when a key has been pressed, but subsequently released, inside of a custom [[custom windows - mIRC|@window]].
+
{{mirc title|On Keyup - Events}}
 +
The '''ON KEYUP''' event is triggered when a key has been pressed, but subsequently released, inside of a custom {{mirc|custom windows|@window}}.
  
 
This event fills the following identifiers:
 
This event fills the following identifiers:
<div style="background-color: rgba(0,0,0,.03); display: block;"><span style="border-right: 1px dashed rgba(0,0,0,.15); display: inline-block; margin-left: 35px; margin-right: 10px; width: 70px;">'''{{mIRC|$keyval}}'''</span>The [[unicode character|unicode character]] value of the key being released</div>
+
<div style="background-color: rgba(0,0,0,.03); display: block;"><span style="border-right: 1px dashed rgba(0,0,0,.15); display: inline-block; margin-left: 35px; margin-right: 10px; width: 70px;">'''{{mIRC|$keyval}}'''</span>The Windows keycode value of the key being released, see https://docs.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes for a list of keycodes</div>
  
<div style="background-color: rgba(0,0,0,.03); display: block;"><span style="border-right: 1px dashed rgba(0,0,0,.15); display: inline-block; margin-left: 35px; margin-right: 10px; width: 70px;">'''{{mIRC|$keychar}}'''</span>The actual character released</div>
+
<div style="background-color: rgba(0,0,0,.03); display: block;"><span style="border-right: 1px dashed rgba(0,0,0,.15); display: inline-block; margin-left: 35px; margin-right: 10px; width: 70px;">'''{{mIRC|$keychar}}'''</span>The actual character released, this is not useful and you should not be relying on this, it won't work when you needed two keypresses to get the character</div>
  
<div style="background-color: rgba(0,0,0,.03); display: block; margin-bottom: 10px;"><span style="border-right: 1px dashed rgba(0,0,0,.15); display: inline-block; margin-left: 35px; margin-right: 10px; width: 70px;">'''{{mIRC|$keyrpt}}'''</span>During this '''ON KEYUP''' event, the '''$keyrpt''' identifier always returns ''$true''</div>
+
<div style="background-color: rgba(0,0,0,.03); display: block; margin-bottom: 10px;"><span style="border-right: 1px dashed rgba(0,0,0,.15); display: inline-block; margin-left: 35px; margin-right: 10px; width: 70px;">'''{{mIRC|$keyrpt}}'''</span>it always returns ''$true''</div>
  
 
== Synopsis ==
 
== Synopsis ==
<pre>ON <level>:KEYUP:<@>:<key,...,keyN>:<commands></pre>
+
<pre>ON <level>:KEYUP:<@>:<keycode,...,keycodeN>:<commands></pre>
  
 
== Parameters ==
 
== Parameters ==
<span style="display: inline-block; width: 105px;">'''<level>'''</span>The level for the event to trigger.
+
<span style="display: inline-block; width: 105px;">'''<level>'''</span>The corresponding {{mIRC|access levels}} for the event to trigger.
  
<span style="display: inline-block; width: 105px;">'''<@>'''</span>The [[custom windows - mIRC|custom window]] where this event should listen. Can be '''@''' for all windows.
+
<span style="display: inline-block; width: 105px;">'''<@>'''</span>The {{mirc|custom windows|custom window}} where this event should listen. Can be '''@''' for all windows.
  
<span style="display: inline-block; width: 105px;">'''<commands>'''</span>The specific key, or keys to listen for. Can specify multiple keys, such as:
+
<span style="display: inline-block; width: 105px;">'''<keycodes>'''</span>The specific key, or keys to listen for. Can specify multiple keys, such as:
 
<source lang="mIRC">ON *:KEYUP:@myWindow:38,42,55,78:echo -a $keyval</source>
 
<source lang="mIRC">ON *:KEYUP:@myWindow:38,42,55,78:echo -a $keyval</source>
  
 
== Example ==
 
== Example ==
Create an alias that launches a custom, [[Picture Windows - mIRC|picture window]] which listens for key releases and displays the key value released, and the key character released:
+
Create an alias that launches a custom, {{mirc|picture windows|picture window}} which listens for key releases and displays the key value released, and the key character released:
 
<source lang="mIRC">alias keyUpTest {
 
<source lang="mIRC">alias keyUpTest {
 
   window -p $+ $iif($window(@myWindow),ra) @myWindow 550 300 250 83
 
   window -p $+ $iif($window(@myWindow),ra) @myWindow 550 300 250 83
Line 26: Line 27:
 
ON *:KEYUP:@myWindow:*: {
 
ON *:KEYUP:@myWindow:*: {
 
   clear @myWindow
 
   clear @myWindow
   drawtext @myWindow 1 3 3 Key value: $iif($keyval,$v1,NA)
+
   drawtext @myWindow 1 3 3 Keycode value: $iif($keyval,$v1,NA)
   drawtext @myWindow 1 3 25 Key character: $iif($keychar,$v1,NA)
+
   drawtext @myWindow 1 3 25 character: $iif($keychar,$v1,NA)
 
}</source>
 
}</source>
  
Line 37: Line 38:
 
[[File:On keyup event - mIRC (fixed).png|This screenshot depicts the On Keyup event in mIRC.]]
 
[[File:On keyup event - mIRC (fixed).png|This screenshot depicts the On Keyup event in mIRC.]]
  
Note that this makes use of a [[Picture Windows - mIRC|picture window]], as well as the [[/drawtext command - mIRC|drawtext command]]. These types of [[Picture Windows - mIRC|windows]] and their tools can be very powerful in creating some amazing graphical layouts, as well as mIRC games.
+
Note that this makes use of a {{mirc|picture windows|picture window}}, as well as the {{mirc|/drawtext|drawtext command}}. These types of {{mirc|picture windows|windows}} and their tools can be very powerful in creating some amazing graphical layouts, as well as mIRC games.
  
 
== Compatibility ==
 
== Compatibility ==
Line 43: Line 44:
  
 
== See Also ==
 
== See Also ==
* [[custom windows - mIRC|Custom Windows]]
+
* {{mirc|custom windows}}
 
* {{mIRC|/drawtext}}
 
* {{mIRC|/drawtext}}
* [[on keydown - mIRC|ON KEYDOWN]]
+
* {{mirc|on keydown}}
 
* {{mIRC|$keyval}}
 
* {{mIRC|$keyval}}
 
* {{mIRC|$keychar}}
 
* {{mIRC|$keychar}}
Line 51: Line 52:
 
{{mIRC on event list}}
 
{{mIRC on event list}}
  
[[Category:MIRC on events|keyup]]
+
[[Category:mIRC on events|keyup]]

Latest revision as of 06:46, 6 February 2024

The ON KEYUP event is triggered when a key has been pressed, but subsequently released, inside of a custom @window.

This event fills the following identifiers:

$keyvalThe Windows keycode value of the key being released, see https://docs.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes for a list of keycodes
$keycharThe actual character released, this is not useful and you should not be relying on this, it won't work when you needed two keypresses to get the character
$keyrptit always returns $true

Synopsis[edit]

ON <level>:KEYUP:<@>:<keycode,...,keycodeN>:<commands>

Parameters[edit]

<level>The corresponding access levels for the event to trigger.

<@>The custom window where this event should listen. Can be @ for all windows.

<keycodes>The specific key, or keys to listen for. Can specify multiple keys, such as:

ON *:KEYUP:@myWindow:38,42,55,78:echo -a $keyval

Example[edit]

Create an alias that launches a custom, picture window which listens for key releases and displays the key value released, and the key character released:

alias keyUpTest {
  window -p $+ $iif($window(@myWindow),ra) @myWindow 550 300 250 83
}
ON *:KEYUP:@myWindow:*: {
  clear @myWindow
  drawtext @myWindow 1 3 3 Keycode value: $iif($keyval,$v1,NA)
  drawtext @myWindow 1 3 25 character: $iif($keychar,$v1,NA)
}

The following command can now be typed into any mIRC command prompt:

/keyUpTest

Below is an image reflecting what this example will look like:

This screenshot depicts the On Keyup event in mIRC.

Note that this makes use of a picture window, as well as the drawtext command. These types of windows and their tools can be very powerful in creating some amazing graphical layouts, as well as mIRC games.

Compatibility[edit]

Added: mIRC v5.8
Added on: 05 Sep 2000
Note: Unless otherwise stated, this was the date of original functionality.
Further enhancements may have been made in later versions.


See Also[edit]