Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Deprecated   Guides   Examples   Videos
New in version: 10.0   10.1   10.2   10.3   10.4   10.5   11.0   11.1   11.2   11.3    Statistic    FMM    Blog  


Sets the menu items's keyboard equivalent modifiers.

Component Version macOS Windows Linux Server iOS SDK
Menu 4.1 ✅ Yes ❌ No ❌ No ❌ No ❌ No
MBS( "MenuItem.SetKeyEquivalentModifierMask"; item; mask )   More


Parameter Description Example
item The reference to the menu item. Please create one with MenuItem.CreateMenuItem or MenuItem.CreateSeparator. $item
mask The key masks indicate modifiers such as the Shift or Option keys. mask is a number and you can add the constants below. 524288


Returns OK or error.


Sets the menu items's keyboard equivalent modifiers.
In general, you are strongly encouraged to always set NSCommandKeyMask in mask, although there may be some conventions where this is not required. For example, in an application that plays media, the Play command may be mapped to just " ” (space), without the command key.
NSShiftKeyMask is a valid modifier for any key equivalent in mask. This allows you to specify key-equivalents such as Command-Shift-1 that are consistent across all keyboards. However, with a few exceptions (such as the German "ß” character), a lowercase character with NSShiftKeyMask is interpreted the same as the uppercase character without that mask. For example, Command-Shift-c and Command-C are considered to be identical key equivalents.

NSShiftKeyMask131072Shift Key
NSControlKeyMask262144Control Key
NSAlternateKeyMask524288Alternate/Option Key
NSCommandKeyMask1048576Command Key


Add menu item with key ⇧⌘T:

# set useful constants:
Set Variable [$ShiftKeyMask; Value:131072]
Set Variable [$ControlKeyMask; Value:262144]
Set Variable [$AlternateKeyMask; Value:524288]
Set Variable [$CommandKeyMask; Value:1048576]

#now make menu entry
Set Variable [$item; Value:MBS("MenuItem.CreateMenuItem"; "With Key Equivalent")]
Set Variable [$r; Value:MBS("MenuItem.SetKeyEquivalent"; $item; "T")]
Set Variable [$r; Value:MBS("MenuItem.SetKeyEquivalentModifierMask"; $item; $ShiftKeyMask + $CommandKeyMask)]
Set Variable [$r; Value:MBS("Menu.AddItem"; $menu; $item)]

See also

Example Databases

Created 18th August 2014, last changed 15th April 2015

MenuItem.SetKeyEquivalent - MenuItem.SetMixedStateImage

Feedback: Report problem or ask question.

MBS Xojo Plugins

Start Chat