customize keyboard navigation keys

April 11, 2023

Share this page

Facebook icon

Remapping 101: How to change your keyboard key output

Your PC or laptop keyboard doesn’t have to be one-size-fits-all. If you’re not a fan of certain key placements or find that you aren’t using some of your keys, you can rearrange the functions of your keys however you like. Most keyboards are laid out in the same way, but Windows 11 features  allow you to make the necessary adjustments to help you type more comfortably. Learn how you can remap your keys and change keyboard outputs on Windows 11 .

Why remap your keyboard?

If you’re used to a standard keyboard layout, you may not initially see the value in remapping your keys. Here are some common reasons for changing keyboard outputs:

  • Typing on a foreign keyboard. If you want to type in any language besides English, it can be difficult to type seamlessly on an English-only keyboard. By switching your key functions, you can cater to different language settings.
  • Using your keyboard for PC gaming. PC gamers rely on their keyboards to play their favorite games. Remapping your keys to best suit your gaming needs can improve performance and make your frequently used keys more accessible.
  • Repurposing underused keys. Not everyone uses their keys the same way. If it seems like a key that you don’t often use is taking up valuable space on your keyboard, you can reassign its function to find a good use for it and increase productivity.

Popular QWERTY alternatives

You may notice that top row of letters on your keyboard, going left to right, spells QWERTY. However, there are other popular keyboard layouts that can help you type faster or more comfortably. Learn more about each layout and how they might benefit your typing:

  • AZERTY. The AZERTY layout simply moves the output of the Q , W , and M keys. It is most often used in France and other surrounding countries.
  • Dvorak. The Dvorak layout puts the most used keys in the middle row, which decreases finger movement. This typing method can help reduce strain in your fingers, which makes for a more ergonomic experience.
  • Colemak. The Colemak layout offers a slight improvement on the Dvorak layout. It also places the commonly used keys in the middle row, but it keeps the useable features of the QWERTY layout intact.

How to remap your keys on Windows 11

The easiest way to change your keyboard functions on Windows 11 is to use the Keyboard Manager  utility. The Keyboard Manager is one of many utilities available in Microsoft PowerToys , which are a collection of productivity tools that allow users to customize their Windows experience.

How does Keyboard Manager work?

Once you’ve downloaded PowerToys onto your device, select Keyboard Manager and toggle Enable Keyboard Manager. You’ll find separate sections for remapping keys and remapping shortcuts, each of which can be adjusted to your liking. Some keys and shortcuts cannot be remapped in Keyboard Manager, and these limitations are highlighted on the platform. PowerToys must be running for the key mapping to work, so make sure you don’t close out of the program after making your selections.

What other keyboard mapping functions are available on Windows?

If you are still running Windows 10 on your PC, you can download Microsoft Keyboard Layout Creator  to create your own keyboard layouts. Microsoft keyboard users can also try the Mouse and Keyboard Center  app to get the most out of the customization features within the accessories. Other keyboard mapping options can be downloaded on Microsoft Apps .

By learning how to remap your keys, you can break the mold and take control of how you use your keyboard. Shop for Microsoft Keyboards  to find the perfect keyboard to test your remapped keys on Windows 11 .

Products featured in this article

Windows 11 logo

More articles

Surface Laptop Studio Feature with 11th Gen Intel® Core processor and NVIDIA® RTX™ A2000 laptop GPU shown

How to check your GPU and why it matters

Get to know the purpose and value of your computer’s GPU.

Windows device projected onto a bigger screen

How to use Windows Remote Desktop to access a PC

Learn how Windows Remote Desktop allows you to access your PC from anywhere.

Person sitting on couch using Windows laptop

How to find and enjoy your computer's accessibility settings

Find the features to help with specific vision, hearing, or mobility needs.

  • Power Up: Gen Z Gaming Tips
  • iPhone 15 Price, Features & More

How to Remap a Keyboard in Windows 10

Use Microsoft PowerToys to reassign keys and change keyboard shortcuts

customize keyboard navigation keys

  • Wichita Technical Institute
  • The Ultimate Guide to Keyboard Shortcuts
  • The Ultimate Guide to Keyboards
  • The Ultimate Guide to Computer Mice
  • The Quick Guide to Webcams
  • Printers & Scanners
  • Raspberry Pi

What to Know

  • Download Microsoft Power Toys, open it, and then go to Keyboard Manager > Remap a Key or Remap a Shortcut .
  • To reset keys and shortcuts to the default, select the Trashcan icon beside the entry.
  • If you have an external keyboard and mouse, use the Windows Mouse and Keyboard Center tool to customize both.

This article explains how to remap a keyboard in Windows 10. Instructions apply to external keyboards and the built-in keyboards of Windows-based laptops.

How to Change a Keyboard Layout in Windows 10

The easiest way to customize your keyboard is by using PowerToys, a free program made by Microsoft. It allows you to reassign keys and change your keyboard shortcuts using a simple interface. PowerToys also enables you to personalize the layout and appearance of the operating system.

Can You Reassign Keyboard Keys?

Follow these steps to reassign keys in Windows 10:

Download Microsoft Power Toys and install it on your PC.

Open Power Toys and select Keyboard Manager in the left sidebar.

Select Remap a Key .

If the keyboard options are grayed out, select the Enable Keyboard Manager switch.

Select the Plus ( + ) under Key .

Under Key , choose the key you want to reassign from the drop-down menu, or select Type and enter a key.

Under Mapped To , choose the new key. If you want to switch two keys, repeat steps 5 and 6 to create another entry, reversing the keys.

To reset the key to its default, return to this screen and select the Trashcan icon beside the entry.

Select OK .

Select Continue Anyway , if you see a notice telling you you'll no longer be able to use the keys for their original purpose.

How to Remap Windows 10 Shortcuts

You can change keyboard shortcuts for specific apps or your whole system:

Open Microsoft Power Toys and select Keyboard Manager in the left sidebar, then select Remap a Shortcut .

Select the Plus ( + ) under Shortcut .

Choose the key you want to reassign from the drop-down menu under Shortcut or select Type and enter a keyboard shortcut.

Under Mapped To , choose the new key or shortcut.

Under Target Apps , enter the name of an app (if you leave this section blank, the change is applied system-wide).

How to Reset Keyboard Mapping

To set your key reassignments back to the defaults, go to Keyboard Manager in PowerToys, select Remap a shortcut , and then select the Trashcan icon beside the entry you want to delete.

How Can I Customize My Keyboard?

PowerToys lets you reassign keys and shortcuts, but some keyboards come with customization software that gives you even more control over how your device works. For example, you could create multi-key macros and insert blocks of text with a single keystroke. You can customize both with the Windows Mouse and Keyboard Center tool if you have an external keyboard and mouse.

If you need to reassign a key because it isn't working, you can enable the Windows 10 on-screen keyboard to access all keys.

Remapping a keyboard on a Mac works differently than on a Windows PC. While you can't wholly remap the keyboard, you can set up custom shortcuts. Go to the Apple menu > System Preferences > Keyboard and click the Shortcuts tab. Select a shortcut and highlight its existing key combination. Then, type in your new key combination, which will replace the previous shortcut.

If you want a hotkey to access a different shortcut or command, download the Windows Mouse and Keyboard Center and connect the keyboard you wish to configure. Open the Microsoft Mouse and Keyboard Center and choose the key you'd like to reassign, then select a command from the command list to become the key's new function.

You don't need to remap a Windows PC keyboard for use on a Mac, but you'll need to be aware of the Windows keyboard equivalents for Mac's special keys . For example, the Windows key is equivalent to the Mac's Command key. Also, key locations are different on a Windows keyboard. If you want to reassign a Windows keyboard key's location for use with your Mac so it's easier to find, go to the Apple menu > System Preferences > Keyboard . Select Modifier Keys , then switch the keys' functions to your liking.

Get the Latest Tech News Delivered Every Day

  • What Is a Mechanical Keyboard?
  • How to Make a Heart on a Keyboard
  • How to Turn On the Keyboard Light (Windows or Mac)
  • How to Screenshot on a Logitech Keyboard
  • How to Change Mouse Speed or Sensitivity
  • How to Type a Tilde Mark
  • How to Charge a Logitech Keyboard
  • How to Turn Off Mouse Acceleration in Windows 10
  • What Is a Keyboard?
  • How to Use Alt Codes
  • How to Change Keyboard Language
  • How to Fix an HP Laptop Keyboard That's Not Working
  • My Keyboard Won't Work. Now What?
  • How to Fix a Dell Keyboard Not Working
  • How to Clean a Mechanical Keyboard

By clicking “Accept All Cookies”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts.

How-To Geek

How to remap any key or shortcut on windows 10.

Would you like to use a key for another function in Windows 10? Thanks to PowerToys, it's easy to remap keys or even multi-key shortcuts. Here's how.

Quick Links

The secret is powertoys, how to remove the new key mapping, how to disable or remap keys using sharpkeys [alternative method], key takeaways.

Install Microsoft PowerToys from GitHub, launch it, and then navigate to Keyboard Manager > Remap a Key. Click the plus button, and then select the key you want to rebind from the list. You can click the trash can icon to remove a remapping at any time.

Would you like to use a different keyboard key to perform a certain task in Windows 10? Thanks to PowerToys , it's easy to remap any key to another key or even a shortcut combination on your keyboard. Here's how to set it up.

In the past, remapping keys in Windows 10 required a difficult-to-use third-party program. Today, Microsoft makes it easy with PowerToys , a free utility available for download online. Using PowerToys, you can make any key on your keyboard act like any other key---and even remap shortcuts.

If you don't already have PowerToys installed, download it for free from Github. After you install it, launch PowerToys Settings, then click "Keyboard Manager" in the sidebar. In the "Keyboard Manager" settings, click "Remap a Key."

When the "Remap Keyboard" window pops up, click the plus button ("+") to add a new key mapping.

After that, you'll need to define which key you want to remap (in the "Key:" column), and what key or shortcut you want it to perform (in the "Mapped To:" column).

First, select the key you'll be remapping in the "To:" column by either clicking the "Type" button and pressing the key on your keyboard, or by selecting it from the list in the drop-down menu. For example, we'll pick Scroll Lock here, since it often sits unused.

Related: How to Make Your Scroll Lock Key Useful on a Windows 10 PC

Next, select the key or shortcut you want to perform in the "Mapped To" column. For a single key, you can either choose it from the drop-down menu or click the "Type" button, then press it on your keyboard.

If you want to use a shortcut key combination, press the "Type" button, then press the combination on your keyboard. For example, here we've typed "Ctrl+C" for the standard Windows "Copy" shortcut.

After you have both "Key:" and "Mapped To:" columns defined, click "OK."

If you see a warning that one key will be left unassigned, click "Continue Anyway." This means that you won't be able to access the original function of the key that you just remapped.

(In our example, there will be no way to use Scroll Lock unless you remap another key to perform the original Scroll Lock function).

Next, you'll see the resulting mapping listed in the "Keyboard Manager" settings. That means your custom mapping has been saved and is now active.

If you want to add more mappings, click "Remap a key" again. When you're done, close PowerToys Settings completely, and your remapped key (or keys) will remain in effect. Use them as much as you'd like. You can always go back and adjust your mappings later if necessary.

Later on, if you want to remove the custom mapping you made, relaunch Power Toys Settings, then click "Keyboard Manager" and "Remap a key" again. In the list of mappings, click the trash can icon beside the mapping you'd like to delete.

The mapping will be removed. After that, click "OK" to close the window. Then you can either exit PowerToys completely or create a new mapping using the guide above. Have fun!

Related: How to Remap Any Key or Shortcut on Windows 11

The major problem with PowerToys is that the remappings only work if the PowerToys application is running, so they won't work on the login screen. There also seem to be issues with the remappings not working properly in games and some other places. The solution? Use the old-school Windows Registry key remapping technique... but do it the easy way, using the open-source SharpKeys application.

SharpKeys won't let you remap shortcut key combinations, so you can't remap ALT+C to CTRL+C, for example, but you can do things like remap or disable the Caps Lock key on any version of Windows .

Install the application from their Github project page or from the Microsoft Store , open it up (clicking through the annoying Windows SmartScreen warnings), and then click the Add button to open up the Add New Key Mapping dialog.

We've been using SharpKeys literally since Windows Vista was around. That's a long time.

Related: All Microsoft's PowerToys for Windows 10 and 11, Explained

How to customize the touch keyboard on Windows 11

The new touch keyboard on Windows 11 is very customizable, and in this guide, we'll show you all the settings you can change.

Windows 11 Touch Keyboard Customization

Windows 11 brings several improvements to the experience for touch-enable devices, including changes to the tablet mode that now adds more separation to the items in the Taskbar and makes targets bigger to make it easier on the finger. You will find new finger gestures, and there is a new and very customizable touch keyboard.

The redesigned touch keyboard for Windows 11 ships with a modern look and several improvements. For example, in this virtual keyboard, you will find updated keys with rounded corners, a gripper to drag it around, and a new layout that has been thought for typing comfort and accuracy. The new experience even comes with the emoji panel that now includes GIFs and the Clipboard history interface.

In addition to these improvements, the touch keyboard also comes with new settings that allow you to customize virtually every aspect of the experience, including the look and feel with 16 different themes and the ability to create a custom color scheme. You can also change the size of the keyboard and keys, and a lot more.

In this Windows 11 guide, we will walk you through the steps to customize the keyboard experience for touch-enabled devices.

On Windows 11, you can control various aspects of the touch keyboard. You can change the size, select a different theme, or create your custom color scheme. You can customize the keyboard keys and more.

Change keyboard size

To change the Windows 11 touch keyboard size, use these steps:

  • Open Settings .
  • Click on Personalization .
  • Click the Touch keyboard page from the right side.
  • Use the Keyboard size slider to change the size.
  • (Optional) Click the Keyboard size setting and click the Reset button to return to the default size.

Enable key background

To set a different background for keys, use these steps:

  • Click the Keyboard theme settings.
  • Turn on the Key background toggle switch.

Change key text size

To make the keyboard keys smaller or larger, use these steps:

Change keyboard theme

To change the touch keyboard theme, use these steps:

  • Choose one of the 16 different themes.
  • Click the Open keyboard button to preview the style.

Create custom theme

To create a custom theme for the Windows 11 touch keyboard, use these steps:

  • Select the Custom theme option.
  • Click the Edit button.
  • Click the Text tab.
  • Select the key text color.
  • Select the color for the text in the suggestion area.
  • Click the Keys tab.
  • Select the key background color.
  • Use the slider to select the level of transparency for the background.
  • Click the Window tab.
  • Select a color for the keyboard background.
  • (Optional) Use the Personalize your background drop-down menu and select the Picture option.
  • Click the Choose your picture button.
  • Select the picture you want to use as background.
  • Use the Choose a fit drop-down menu and select the fit option (if applicable).
  • Use the Background brightness slider to adjust the brightness of the background.
  • Click the Save button.

Once you complete the steps, the touch keyboard will reflect your new customization changes.

More Windows resources

For more helpful articles, coverage, and answers to common questions about Windows 10 and Windows 11, visit the following resources:

  • Windows 10 on Windows Central — All you need to know
  • Windows 10 help, tips, and tricks
  • Windows 11 on Windows Central — All you need to know
  • Windows 11 help, tips, and tricks

Get the Windows Central Newsletter

All the latest news, reviews, and guides for Windows and Xbox diehards.

Mauro Huculak

Mauro Huculak is technical writer for His primary focus is to write comprehensive how-tos to help users get the most out of Windows 10 and its many related technologies. He has an IT background with professional certifications from Microsoft, Cisco, and CompTIA, and he's a recognized member of the Microsoft MVP community.

  • 2 Das Keyboard X50Q review: Beautiful RGB mechanical switches with some limited notification programming
  • 3 Das Keyboard 6 Professional review: Where has this mechanical keyboard been all my life?
  • 4 Xbox details Forza Motorsport (2023) live service details, free updates with new cars and events every month
  • 5 How to get the Windows 11 2023 Update final release before anyone else

customize keyboard navigation keys

Select registration option

Personal accounts.

  • Save your personal devices and preferences
  • Easy access to support resources

Business/IT accounts

  • Managing contracts and warranties for your business
  • Submitting and managing support cases


Hp-contact-secondary-navigation-portlet, select your model, let hp find my products.

HP can identify most HP products and recommend possible solutions.


Check the information on compatibility, upgrade, and available fixes from HP and Microsoft.  Windows 11 Support Center


Hp pcs - keyboard shortcuts, hotkeys, and special keys (windows).

Discover useful keyboard features in Windows that can make navigation, tasks, and functions quicker and easier.

Common keyboard shortcuts

You can use key press combinations to perform common tasks in Windows.

customize keyboard navigation keys

Windows 10 keyboard shortcuts

Use key press combinations to quickly access common functions in Windows 10.

Keys with icons or symbols

Most keyboards come with special symbols applied to the function keys. Your HP keyboard might have extra keys or buttons with icons as well.

On most laptop keyboards, you must press and hold the fn key before pressing the key with the symbol or icon to perform the function.

Frequently asked questions

Review these frequently asked questions (FAQs) to find answers to common questions about keyboard shortcuts.

How do I change or disable a key?

You can use additional software to change the behavior of keyboard keys in Windows.

There are several free software apps for changing the behavior of keys, such as Sharpkeys, MapKeyboard, KeyTweak, Keyboard Layout Creator by Microsoft, and others. Search the internet for the name of one of these software applications or "keyboard mapping software" to learn more.

It is important to create a System Restore point before remapping keys in case you need to return to your original keyboard layout.

The fn key is a special key controlled by hardware. It cannot be remapped using software.

What do the function keys do?

Function keys allow you to perform an action by pressing a key instead of typing a character.

The action that happens for a function key depends on the software that is active when the key is pressed. Some software or apps might have functions for the keys, while others might not. If you press a function key while using an app and nothing happens, the app might not have a function programmed for that key.

Some function keys have a symbol printed on the key in addition to the function number. To activate the function that corresponds to the symbol, press and hold the fn key while pressing the function key. See Keys with icons or symbols for more information.

See the software help menu or support site to find out which keys are supported and the associated functions for those keys.

How do I turn the fn key on or off?

You can change a setting in the BIOS to change the Action Key mode setting.

Normally, you must first press the fn key to perform the secondary action of a function key, which is the action of the printed symbol on the key. Some notebook computers use a feature called Action Key mode that allows you to perform the secondary action without needing to press and hold the fn key first.

For more information, see HP Notebook PCs - How to lock or unlock the fn (function) key .

How do I type an at sign (@)?

On most keyboards the at sign (@) is created by pressing shift + 2 .

If your keyboard has more than one symbol on the number 2 key, press ctrl + shift + 2 to type the at sign. If the at sign is found on the letter Q key, press and hold the altgr key, and then press q to type the at sign.

Can I use my keyboard as a mouse?

Yes. You can use keyboard shortcuts to perform normal Windows tasks in place of actions that would normally be done through a mouse. Or, you can enable mouse keys to use the numeric keyboard in place of a mouse.

You can use the following keyboard shortcuts to perform normal Windows tasks that would normally be done by using a mouse.

Use mouse keys (numeric keypad required)

Move the mouse pointer and click items in Windows by using the keys on the numeric keypad.

Press the Windows key + u to open the Ease of Access Settings screen.

Open the Ease of Access options for using a mouse.

Using the keyboard: Use the arrow keys and the tab key to highlight the Mouse option from the Ease of Access menu on the left side of the window, and then press enter .

Using the mouse: Click the Mouse option from the Ease of Access menu on the left side of the window.

Turn on mouse keys.

Using the keyboard: Use the arrow keys and the tab key (if needed) to highlight Use numeric keypad to move mouse around the screen , and then press space to make the selection.

Using the mouse: Click the slider for Use numeric keypad to move mouse around the screen .

If Num Lock is not enabled, press the num lock key to enable the numpad and Mouse Keys . The Mouse Keys feature is only on when Num Lock is enabled.

Press the following keys to perform mouse actions from the numeric keypad:

To move the pointer, press a number other than 5 in a direction that corresponds to the number's placement on the keypad. For example, press 8 to move the pointer up or press 1 to move the pointer down and to the left.

To left-click, press forward slash ( / ) and then press 5 .

To right-click, press the minus sign ( - ) and then press 5 .

To double-click (the left mouse button), press forward slash ( / ) and then press + .

To drag (hold the left mouse button), press zero ( 0 ).

To drop (release the left mouse button), press period or decimal point ( . ).

The speed of the mouse pointer might be slow after first enabling this feature. Increase the speed of the mouse pointer from the pointer options tab in mouse settings.

What do I do when some keys type the wrong characters?

Make sure that Num Lock is off by pressing the num lock key. If the problem persists, make sure that your keyboard input method in Windows matches your keyboard's country/region type. For example, if a QWERTY input method is used with a QWERTZ keyboard, some letters, such as Y and Z, do not produce the key press as labeled on the keys.


Hp-feedback-banner-portlet, hp-country-locator-portlet, select a location.

After you choose your location, you'll be able to select a language

Europe, Middle East, Africa

Asia pacific and oceania, select a language, hp-detect-load-my-device-portlet, hp-hero-support-search.

  • All Support
  • Software, Drivers and Updates
  • Troubleshooting
  • Product Information
  • User Guides

Search help

Tips for better search results.

  • Ensure correct spelling and spacing - Examples: "paper jam"
  • Use product model name: - Examples: laserjet pro p1102, DeskJet 2130
  • For HP products a product number. - Examples: LG534UA
  • For Samsung Print products, enter the M/C or Model Code found on the product label. - Examples: “SL-M2020W/XAA”
  • Include keywords along with product name. Examples: "LaserJet Pro P1102 paper jam", "EliteBook 840 G3 bios update"

Need help finding your product name or product number?

Finding your Serial Number Finding your Product Number

Serial Number

Session timed out

customize keyboard navigation keys

Please sign back in to continue

How to Remap Keyboard in Windows 10, 8, 7, and Vista

How to Remap Keyboard in Windows 10, 8, 7, and Vista

author-Team Beebom

Remap Keyboard in Windows 10 Using Third Party Tools

Why the need of remapping windows keyboard.

  • If you break any of the keys on the keyboard or it stops working on its on, remapping your Windows 10 keys is a good option.
  • If you work interchangeably on Windows and Mac and want to use a Windows keyboard on Mac . I have found that remapping left Alt button to Ctrl helps a lot.
  • If you use your PC primarily for gaming, than remapping some keys can help you improve your gameplay.
  • If you work a job where you have to use one key a lot, remapping it to a key which is easily reachable can improve your workflow.

So, if any of these reasons make sense to you, here is how you can remap keyboard on your Windows 10, 8,7, and Windows machine.

Remap Keys on Windows 10 with SharpKeys

  • On the main screen of SharpKeys, click on “Add.”

Add Key

  • This will open a key mapping window. Here, from the left pane, select the key that you want should perform some other action . And from the right pane, select the key whose function you want it to perform . You can also click on “Type Key” available at the bottom of both the panes, and then tap your desired key to make that selection. Once you’ve made your selection, click on “OK” to continue. On my computer, I wanted to turn off the Scroll Lock, so I selected “Special: Scroll Lock” from the left pane and “Turn Key Off” from the right.

Select Keys

  • When you come back on the main screen of the tool, you should now see the entry of the remapping that you want to do. To finalize this, click on “Write to Registry.”

Write to Registry

Reassign Keyboard Keys in Windows 10 Using Other Tools

1. keytweak.

KeyTweak is a tool which offers multiple ways – three, to be precise – to remap a key. The first is using the virtual keyboard. This method allows you to choose a key that you want to map, and then select the key, from a drop-down menu, to which you want to map it. The second way, the Half Teach Mode, works very similarly. The third (and the last) way is the Full Teach Mode. This allows you to press both the from and to mapping keys. Using this tool can get a bit of confusing as this uses scan-codes instead of the usual characters.


2. Microsoft Keyboard Layout Creator

Microsoft Keyboard Layout Creator

3. AutoHotkey

AutoHotkey takes a different approach for remapping the keys. Instead of the standard registry tweaking, it allows you to create scripts that you can run . A major advantage that you get with this tool is the ability to export the scripts as executable files. Though this does not have an interface as such, the steps for creating and executing scripts can easily be found in the tutorial of the tool. This tool brings more features and is really powerful. Not only you can remap keyboard keys but you can also create key binds, create keyboard executable automation, and more . Note that all these pro features also mean that you will have to invest time in learning this app. If you just want to remap your Windows keyboard, the above tools will be more than enough.


4. Key Remapper

4. Key Remapper

Remap Keys on Windows 10 with PowerToys

How to Remap Keyboard in Windows 10, 8, 7, and Vista

Install: ( Free )

Frequently Asked Questions

How do you fix keyboard typing wrong characters, why is my laptop not typing, how do i change my laptop keyboard back to normal, what are keyboard hotkeys, how do you fix keys on a laptop keyboard.

You’ll have to replace the laptop keyboard or remap the non-functional keys with functional ones using one of the apps like SharpKeys, KeyTweak, or PowerToys.

What is key mapping?

How do i unlock my keyboard on windows 10, why are my keyboard buttons messed up, how do you check if all keyboard keys are working, remap keyboard in windows 10 easily with these tools.

External Monitor brightness featured image

How to Adjust External Monitor Brightness on Windows 11 & 10

this device is disabled error code 22

How to Fix This Device is Disabled (Code 22) Error in Windows 10/11

IRQL NOt LESS OR EQUAL bsod feat image

How to Fix IRQL NOT LESS OR EQUAL Error in Windows 10/11

page fault in non paged area BSOD

How to Fix ‘Page Fault in Nonpaged Area’ BSOD Error in Windows 10/11

feat image bsod

How to Fix ‘Driver Power State Failure’ BSOD Error on Windows

INACCSIBLE BOOD DEVICE bsod guide feat image



Thanks, works like a charm.

tried keytweak and it worked for me

Programmable keyboard like Corsair. Take it with you.

I think it’s better to go with standard one:

Works with microsoft products only

Thanks will try. I spilled beer over my keyboard, cleaned it, almost all keys work except k and p for some reason. So i will switch keys with ; or [

Another reason to need this: my Lenovo Yoga 510 has the right-hand shift key *outside* the up arrow, meaning I keep hitting UP and finding I’m typing in the middle of the line above, when I meant to capitalise a word. I might eventually get used to this but looked for a way of remapping instead – a new skill for me, delighted to find it can be done. Off to try SharpKeys now, and if it’s easy as it sounds, I can see myself customising my keyboard in lots of ways… Having a right-hand Function key instead of the AltGr that I almost never use, for example… yabbadabbadoo, fun fun fun.

Thx for add end of the software, i really like that software :3 (i am not friend with that person, i am a person download this software for osu)

ANOTHER REASON TO REMAP: If you have a weak right hand pinky like me, you can remap the Shift key to the never used (by me anyway) but thumb-pressable right ALT key (just to the right of the spacebar).

I want to be able to press the “star” key and have it print my name. I could do this in windows 7.

AutoHotKey can do that. See the description in the article above.

Todas o no servían o era demasiado complicadas Excepto por la 4. Key Remapper

Muchas gracias

Do any of these solutions let you quickly switch between mappings? A *lot* of laptop keyboards nowadays are coming without the embedded numeric keypad, and it’s driving me nuts – I don’t want to have to carry a separate keypad that is easily broken or lost. The ability to quickly switch between normal and custom with a quick keypress would be invaluable.

I have a laptop PC with a US key layout. Which is mostly OK, except that I have the machine set to UK, and I also sometimes use a separate UK keyboard. If I remap the keys so that they do what they say on the keycaps, it will be wrong when I plug in the external keyboard.

Is there a way to have a different keyboard map depending on whether an external keyboard is attached or not?

Willing to use AutoHotKey if it’s clever enough.

thnx a lot realy helped me <3

Your Comment

Your Email *

cyberpunk 2077 phantom liberty review

Cyberpunk 2077 Phantom Liberty Review: The Turnaround We Needed

Cyberpunk 2077 is one of those games that gave me numerous reasons to be upset when it first launched, and the announcement of the Phantom Liberty made me extremely wary. This is the game that had the worst kind of […]

rog ally beauty shot

Asus ROG Ally Review: Are Handhelds No Longer A Gimmick?

The ROG Ally is unquestionably the biggest competitor to Valve’s Steam Deck. We have already spent a good chunk of time with the Steam Deck but recently got a chance to test the ROG Ally to find out if this […]

new One Piece live action illustrated poster

One Piece Live-Action Review: Beacon of Hope for Anime Adaptations!

One Piece is the best-selling manga of all time, and it’s one of the greatest shonen anime in history. So when the announcement of Netflix’s live-action adaptation broke, every anime fan was skeptical due to the looming curse of botched […]

This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Guidelines for Keyboard User Interface Design

Microsoft Corporation

Summary : This article describes the guidelines for designing a keyboard user interface for a Microsoft Windows application. (35 printed pages)

Role of the Keyboard UI in Accessibility

Keyboard ui design rules, common keyboard ui design mistakes and limitations, complying with standard keyboard navigation, navigating in a logical order, navigating between window panes, navigating within fields, navigating by matching characters, interacting with ui elements, accessing menus and dialog boxes, splitting windows, accessing toolbars, accessing tab controls, setting timed controls, displaying tooltips, creating shortcut keys and access keys, assigning shortcut keys, selecting access keys, providing a customizable keyboard ui, anchoring and extending a selection, example of linear extended selection, example of two-dimensional extended selection, illegal multiple-selection operations, providing auto-completion, retrieving the state of a key, exposing input focus programmatically, input focus exceptions, input focus variations, insertion bar within text, input focus and object selections, input focus on custom windowless controls, input focus in composite custom controls, input focus in a grid control or spreadsheet, input focus on objects only available for mouse devices, input focus verification, windows system parameters for the keyboard ui, about the keyboard preference flag, additional resources, windows shortcut keys.

This article describes the guidelines for designing a keyboard user interface (UI) for a Microsoft Windows application. A keyboard UI allows users to navigate an application and manipulate UI elements by using a keyboard alone or in combination with a mouse (or another pointing device). Following these guidelines will help you design a keyboard UI that makes your application more accessible to people with disabilities.

A well-designed keyboard UI is an important aspect of software accessibility. It enables users who are blind or who have certain motor disabilities to navigate an application and interact with its features. Such users may be unable to operate a mouse, and may rely on assistive technologies such as keyboard enhancement tools, on-screen keyboards, screen enlargers, screen readers, and voice input utilities all of which depend on an application's keyboard UI.

Many assistive technologies use the keyboard UI programmatically,even if users are not using a standard keyboard input device. Although some assistive technologies may have custom keyboard shortcuts that can make an operation easier, consistency and standardization in keyboard UI design for assistive technologies and for all aspects of accessibility are critical to avoid confusing users.

The Windows UI design maximizes input flexibility. Accessibility Options in Control Panel offers tools that enhance keyboard functionality, such as StickyKeys, FilterKeys, ToggleKeys, and MouseKeys. These tools can help users to operate applications with the keyboard. However, they do not replace the accessibility provided by a well-designed keyboard UI.

Fundamentals of Keyboard UI Design

Well-designed applications include two basic requirements:

  • They must be usable even when the keyboard is the sole input device.
  • They must also be functional and user-friendly.

The following sections provide information that you should be familiar with before you begin to design a keyboard UI.

To design an effective keyboard UI, use the following design rules:

Provide keyboard access to all features, and document the keyboard interface.

It is recommended that the keyboard be able to perform the same tasks as a mouse device. Document the keyboard UI in the product manual and through online Help. Be sure that the input focus location (the point at which input is being directed in the UI) is provided programmatically as well as visually.

For more information, see Input Focus Location .

Keep keyboard navigation quick and easy.

Provide simple keyboard navigation methods. Keyboard navigation methods should be as straightforward as mouse navigation methods. Provide programmable, customizable shortcut methods for common and repetitive tasks. Conduct usability studies on an application's keyboard UI design, without the mouse, to ensure ease of use.

For more information, see Designing the Keyboard UI .

Avoid unexpected keyboard UI changes.

The keystrokes required for a task should not change unexpectedly. For example, the underlined access key for a command should be the same regardless of selection or other modal states.

Provide a consistent keyboard navigation model.

Applications need to be consistent with basic keyboard navigation models to avoid system problems. Avoid unexpected shifts in input focus.

For more information, see Complying with Standard Keyboard Navigation .

Provide consistent keyboard shortcuts.

customize keyboard navigation keys

However, this does not mean that all shortcut keys need to be standardized or that applications must always be forced to support the same shortcut keys. For example, not all applications need to support CTRL+P for printing.

For more information, see Assigning Shortcut Keys and Windows Shortcut Keys .

Avoid simultaneous multiple key input.

Applications should not require users to press multiple keys simultaneously, except for the modifier keys SHIFT, CTRL, ALT, and the Windows logo key. The StickyKeys accessibility feature in the Windows operating system can simulate key combinations by allowing users to press keys in a sequential order.

Unique Original Equipment Manufacturer (OEM) function keys, such as the Fn key on laptop computer keyboards, are not supported as modifiers.

Avoid interfering with Windows-supported accessibility options or emulated input devices.

An application cannot interfere with Windows-supported keyboard and mouse accessibility options, such as StickyKeys, FilterKeys, ToggleKeys, and MouseKeys. Input from emulated input devices must be the same as for standard devices. Applications must be able to take input from keyboard or mouse emulated devices, such as with an on-screen keyboard or SerialKeys device.

For more information, see GetAsyncKeyState and Retrieving the State of a Key .

Ideally, all application features must be accessible through the keyboard. However, this may not always be feasible. Sometimes keyboard access to a feature forces users to follow awkward or complicated steps. Or it may be programmatically challenging to implement a feature through the keyboard UI.

The following list describes issues and challenges associated with creating keyboard UIs.

Inconsistent navigation order in dialog boxes.

The navigation order must be logical and follow the direction in which the language is read. Frequently, the order is corrupted when a new control has been added to an existing dialog box. In a group of controls, the navigation between each control must be sequential and orderly.

Input focus stops on each individual option button.

The input focus must be on the selected item only, and a user must be able to select other options by using arrow keys.

Inconsistent or missing navigation between panes and views.

Panes and views are used to divide a single window in order to display multiple views of information. Navigation between panes and views must be logical and available for keyboard users.

Inconsistent navigation in custom tree controls.

A tree control is a navigation model in Windows, and the keyboard model is typically available though the common control library. A custom tree control must be logical and follow the standard navigation model.

Poorly designed custom controls.

It may be easier to develop a new control by combining different controls and maintaining a similar look and feel to existing controls. The input focus must be made available both visually to the user and programmatically for the developer. When developing controls, use the Microsoft Active Accessibility Dynamic Annotation API.

Keyboard UI conflicts.

You can assign shortcut keys in various ways by using a combination of standard keys and modifier keys. However, this can cause conflicts with applications that provide global key sequences for proprietary features, as do many assistive technologies. To prevent conflicts, do not use the Windows global key sequences or common sequences for shortcut keys.

Keyboard UIs vary widely among assistive technologies, and may conflict with an application's shortcut keys. Therefore, provide custom shortcut keys for important keystrokes only, and avoid commonly used keys. For example, in many screen readers, users press the CTRL key to stop the speech review process. Therefore, you should perform usability studies on newly assigned shortcut keys and customizable shortcut keys to avoid conflicts with the system and other applications.

Keyboard UI for mouse operations.

Users can use other tools that simulate mouse operations through a keyboard or with another input device. However, these tools do not replace a well-designed keyboard interface. For example, a simple drag-and-drop operation might require more than 40 complex keystrokes, and a user who is blind might find it difficult or impossible to perform visual operations with keystrokes.

An application that requires extensive use of a mouse could provide an effective keyboard UI by using logical drawing objects and control commands. Rather than operating a control on a pixel-by-pixel basis, an application could provide effective and logical navigation by using commands such as Rotate , Flip , and Move for selected objects.

For information about commonly used shortcut keys, see Windows Shortcut Keys .

Designing the Keyboard UI

After you understand the basic rules for designing keyboard UIs, you can start considering how users will use the keyboard UI to navigate your application and interact with its features and UI elements.

A good practice for creating a well-designed keyboard interface is to model it after one that is already familiar to the user, and one that is compatible with other commonly used applications and controls. The following section describes standard keyboard navigation practices to keep in mind when designing a keyboard UI.

The order in which a user moves, or navigates, through the elements of a UI must be logical and consistent with the natural language in which the UI is written. In a well-designed UI, the navigation order starts with the most commonly used control and flows in the direction in which the language is read. For example, in a dialog box in a UI written in English, the navigation order moves from left to right and top to bottom.

In Windows applications, users navigate by pressing the TAB key to move the input focus from one UI element to another. They press the SPACEBAR or ENTER key to choose the currently selected active region or to activate a control or command. Pressing the SHIFT+TAB key combination reverses the navigation order, moving the input focus backward through the elements, and pressing the arrow keys moves the input focus in specific directions within a group of elements. For more information about input focus, see Input Focus Location .

Figure 1, below, illustrates the navigation order through a group of controls. It has two option buttons, Default Printer and File , and two command buttons, OK and Cancel . The File option button is an independent control, and the text box is a dependent control, which means that it is used only when the File button has been selected.

The navigation order of such controls always starts with the selected option button, such as File , and then proceeds in the order of its dependent controls. Then it moves to other controls in the form, such as the OK command button. It is important to assign the navigation order correctly to ensure that all controls are available at the appropriate times and in a logical sequence.

figure 1. navigation order through a group of controls

Intuitive navigation order is imposed by disabling (graying out) all controls that are currently dependent on unselected option buttons. When an option button is selected, all of its dependent controls are then enabled. To avoid confusing users, when a user selects an option button that has dependent controls, the input focus must notbe automatically moved to the first dependent control.

When a window is divided into two or more panes, keyboard users can move between them by pressing the TAB key or the SHIFT+TAB key combination. They can press the arrow keys to move the input focus within a group of elements in a single pane. If a window has many active UI elements, consider a hierarchical arrangement of each pane.

The following keystrokes are used for moving between panes within a window:

  • The TAB key moves the input focus to the next area of an active pane only if it is not used by any other controls within the window.
  • The CTRL+TAB shortcut keys or F6 function key moves the input focus to the next pane or palette.
  • The CTRL+F6 combination moves the input focus to the next window in a group of related windows or between multiple-document interface (MDI) windows.

Always document shortcut keys for hierarchical navigations; they are application-specific and provide a unique keyboard interface.

It is important that navigation through controls on a dialog box or form be continuous and unobstructed, and occur without causing the user to change values or receive error messages. This can be difficult with controls that validate their contents whenever the user tries to navigate away from them. In these instances, the form or controls must follow one of the following conventions:

  • Never require the user to change a control's initial value during navigation. All controls that validate on exit must start with valid values. For example, users must be able to move the input focus between controls without applying new values, until they press the Submit button.
  • Validate the control's value only when it has changed and the user tries to move the input focus off of the control. Navigating to, or navigating from, a field will not change its value.
  • Change to validating fields when the user selects OK or an equivalent command that submits the changes. In this case, you must allow the user to cancel the operation or choose a command to restore default values.

Applications must provide feedback to users who use matching navigation to move the input focus through a list of items. In matching navigation, a user navigates a list by typing characters that match the first few letters of the listed items. There are two ways to show users the letters in the matching-string buffer:

  • When a user moves the input focus to an entry based on a partial match, the input focus indicator is drawn around the matching characters, rather than the entire entry, to show what has been typed.
  • A tooltip opens adjacent to the input focus to show the matching-string buffer contents.

The application must provide feedback to help users complete matching navigation correctly. To ensure that an application provides this type of feedback, use the following guidelines:

  • When the matching-string buffer is cleared (after a period without input or when the user presses the BACKSPACE key), the input focus indicator is drawn around the entire entry.
  • If the buffer contents do not have any entries, the buffer is cleared and the PlaySound function is called. This plays a default sound that indicates invalid input.
  • The buffer must be emptied when the user carries out another operation, such as when clicking the mouse or pressing a non-printing character to get out of a control, or when manually moving the input focus to another item.

For more information about matching navigation, see Providing Auto-Completion .

A well-designed keyboard UI allows users to interact with all UI features and elements. The following section describes features and tasks to keep in mind when considering how to provide keyboard access to your application.

Menus and dialog boxes are two of the most common and standardized UI elements in the Windows operating system. Menus group related commands into lists, dialog boxes group important functions into windows. Be sure that keyboard users can enter and exit menus by pressing the ALT key. To prevent menus from becoming too long and unwieldy, configure them so that most of the commands are hidden from view until the user requests access to the full list.

Many applications support split bars, which allow users to divide a window into multiple panes. Be sure that users can locate and adjust split bars using keyboard commands. A common way to do this is to provide menu commands for adding, removing, and repositioning split bars. Place these commands under the Window or View menu, or in a shortcut menu. For example, in Microsoft Word users can locate or remove split bar by using the Split command in the Window menu.

Adjusting Element Size and Position

Most windows have Move and Size commands that allow users to adjust the positions and size of UI elements and objects. These commands are located in the System or Control menu. The Control menu is accessed with the ALT+SPACEBAR key combination, and appears on the left end of the title bar. It enables a user to perform Control menu operations by using the keyboard. These commands can also be provided for application-specific objects on the menu bar or on the object's shortcut menu.

The Size command can be more powerful if done either logically or numerically. For example, in Microsoft Excel, a user can use the Format menu to change the width of a column or row either logically or numerically. In List view, the shortcut key CTRL+ (+) key on the numeric keypad adjusts the width of all columns to fit the cells' contents.

Controlling Complex Attributes

A well-designed keyboard interface also allows users to manipulate objects by adjusting the values on the object's property sheet. For example, Figure 2 shows the property sheet that appears next to a Microsoft Visual Basic form. A user who wanted to adjust the left edge of the OK button can use the keyboard to change the value of the Left property in the property sheet.

figure 2. visual basic property sheet

The toolbar is a powerful UI solution for mouse users, but it is generally not accessible to keyboard users. Be sure that your application contains equal or similar functions of the toolbar by using menus, keyboard shortcuts, or tool buttons. For instance, the printing function can be carried out with either the Print button on the toolbar or the CTRL+P shortcut keys.

Microsoft Office has an extensive toolbar interface that can be customized and made keyboard accessible.

When a dialog box has a large number of options or UI elements, you can use the Tab control to organize them by categories. The Tab control can divide controls into several pages, as shown in Figure 3, accessed by shortcut keys such as CTRL+TAB, CTRL+PAGE UP, and CTRL+ PAGE DOWN. Generally, the Tab control is within the navigation order of active UI elements. Users can navigate through different elements by using arrow keys when the input focus is on the control. The order of accessing each element must be logical so that users do not get confused.

figure 3. option dialog box tab controls

A keyboard UI must provide options for adjusting timings, disabling time-outs, or sharing system-wide settings for timings. This allows users who are unable to respond quickly to access these controls.

Users can set up several different keyboard behaviors though Control Panel, such as Keyboard Properties and Accessibility Options . A Windows-based application must support the keyboard options set up by its users. Use the SystemParametersInfo function to read the settings.

For more information, see Windows System Parameters for the Keyboard UI .

A tooltip is a text balloon that appears when a user positions the cursor over a button or UI control. Tooltips contain important information that must be presented to keyboard users. Use the same mouse timing metrics (SPI_GETMOUSEHOVERTIME) to make tooltips appear when a user keeps the input focus over a UI control for a period of time.

Keyboard users can use individual keys and key combinations as shortcuts to bypass menus and carry out commands. These keys are called shortcut keys and access keys, and even mouse users find using them to be faster and less fatiguing than using the mouse to click screen objects. The following guidelines describe how to create shortcut and access keys.

customize keyboard navigation keys

When creating shortcut keys, CTRL+ letter combinations and function keys (F1 though F12) are usually the best choices. For example, the keyboard alternatives for the Cut , Copy , and Paste commands are CTRL+X, CTRL+C, and CTRL+P, respectively.

Keyboard designs vary from country/region to country/region, so avoid using characters that are not available across different languages or in shortcut combinations reserved by the system. It is recommended that shortcut keys in international applications be customizable because mnemonic associations, such as CTRL+B for bold, may not be useful in some languages.

Use the following guidelines for designing shortcut keys:

  • Assign simple and consistent key combinations.
  • Make shortcut keys customizable.
  • Use a shortcut with the CTRL key for actions that represent a large-scale effect, such as CTRL+S for save current document.
  • Use the SHIFT+ key combination for actions that extend or complement the actions of the standard shortcut key. For example, the ALT+TAB shortcut key displays the primary window of a running application. Alternatively, the SHIFT+ALT+TAB key combination allows you to navigate backward through currently running applications that have been previously accessed.
  • Use the SPACEBAR key as the default action of a control, such as for pressing a button control or toggling the status of a check box control. This is similar to clicking the left or primary mouse button.
  • Use the ENTER key for the default action of a dialog box, if available.
  • Use the ESC key to stop or cancel an operation.
  • Avoid modified or case-sensitive letters for shortcuts.
  • Avoid using the following characters for shortcut keys: @ {} [] \ ~ | ^ ' < >
  • Avoid ALT+ letter combinations because they may conflict with access keys. In addition, the system uses many specific key combinations for specialized input; for example, ALT+~ invokes an input editor for the Japanese language.
  • Avoid CTRL+ALT combinations because the system interprets this combination in some language versions as an ALTGR key, which generates alphanumeric characters.
  • Avoid assigning combinations that are reserved or defined by the system or are commonly used by other applications.
  • Do not use the Windows logo key as a modifier key for non-system-level functions.

For more information about shortcut keys, see Windows Shortcut Keys .

Access keys are alphanumeric keys used in conjunction with the ALT key to activate a control. Access keys, as shown in Figure 5, are common and highly visible, and appear as underlined letters on a menu or UI control.

figure 5. menu access keys

As users become familiar with an application, they are more likely to use access keys to speed up common operations. This tendency is even more common among assistive technology users. For example, screen readers present the UI sequentially so that a user can read or listen to find out what UI element the system selected. Access keys are useful in this complex process, especially when a group has a lot of controls.

In a Microsoft Win32 application, you can assign access keys for common controls by placing an ampersand (&) before the letter assigned to the access key. For instance, the access key for a button control that has been assigned &Settings is S. In an HTML document or application, you can specify the shortcut keys and the navigation order by specifying ACCESSKEY and TABINDEX attributes.

The following design rules help ensure that access keys provide a solid accessibility solution:

Make access keys discoverable.

Access keys must be easy for the user to find. Choose letters for access keys as close to the beginning of the label as possible for example, S ettings. The following are good letter choices:

  • Letters at the beginning of the first or second word of the label.
  • A distinctive consonant or a vowel in the label.
  • Letters with wide widths, such as w, m, and capital letters.

Avoid using letters that are difficult to see when they are assigned to access keys. These letters include:

  • Letters with descenders, such as p, g, q, or y.
  • Letters next to a letter with a descender.
  • Letters that are only one pixel wide, such as i or l.

Avoid duplicating access keys.

Keep access key assignments unique; duplicated access keys can confuse users. If absolutely necessary, you can assign a duplicate access key, but be sure that it does not block a user's keyboard operation. Some controls allow the input focus to move between controls with duplicated access keys within the same scope, such as standard menu and list-view controls.

If no characters in the label are available, you can either rename the control or append an access key in parentheses to the end of the label for example, Next (>). Or, depending on how frequently the commands are used, you may omit some of the access keys assigned to some of the UI controls.

  • Do not assign access keys to the OK , Finish , or Cancel command buttons. OK or Finish is typically assigned to the ENTER key for a dialog box default action, and Cancel is assigned to the ESC key.
  • Do not assign access keys to the buttons in a dialog box template, such as the OK , Cancel , and Apply buttons. They cannot be allowed to conflict with those of controls on a particular page.

Locating these buttons to a dialog box's TAB order, or assigning default and escape actions to ENTER and ESC, are acceptable solutions.

Underlining Access Keys

In versions of Windows prior to Microsoft Windows 2000, underlined access keys were visible at all times. In Windows 2000 and later versions, users can hide them if they do not use them.

If your application is using standard menus and dialog boxes, the behavior is automatic. However, applications that draw their own custom controls, such as menus and dialog boxes, must explicitly handle this appropriately. When you are deciding where to underline access keys, keep the following situations in mind:

Setting system parameters to display underlining for access keys.

Users can adjust the default settings for underlining through Control Panel. If the system parameter indicates that access keys are always underlined, an application will always display the underline below the access keys. (The default setting hides underlining.)

For information about these settings, see the SPI_GETMENUUNDERLINES or SPI_SETMENUUNDERLINES parameters for the SystemParametersInfo function in the Platform SDK.

Interacting with a menu or dialog box by using the keyboard.

A user can do the following:

  • Invoke a menu by pressing a key combination such as ALT, F10, or SHIFT+F10.
  • Invoke a menu by using a mouse but then navigate between menus by using the keyboard. After a user interacts with a menu by using the keyboard, all access keys must be underlined until the menu is closed.
  • Press a key to activate another control, such as when pressing the TAB key to move the input focus to the next control or pressing the SPACEBAR key to select an option control. The underline must remain displayed until the user closes the dialog box or container.

To accommodate various accessibility needs, applications must have a keyboard UI that is easy to customize. You can provide this customizability by including the following features in the keyboard UI:

Custom shortcut keys.

These allow users to assign new shortcut keys for frequently used commands. Users can also change default shortcut keys so that they do not conflict with assistive technologies.

Custom menus.

These allow users to add their own commands. Additionally, they can supply users with a selection of menus that have multiple levels.

Keyboard shortcuts for custom macros.

Applications can allow users to assign personal keyboard shortcuts for custom macros. Users can then execute multiple commands by using a single keystroke.

System-wide controls, such as a combo box or list-view control, automatically support full keyboard accessibility. However, be sure to supply a custom keyboard interface when you are:

  • Creating custom window classes or controls.
  • Altering the normal behavior of standard windows or controls.
  • Assigning keyboard navigation in windows or controls, such as dialog boxes.
  • Using speech recognition technology for user input or commands.
  • Creating controls by using markup language.
  • Using client-side scripting or plug-ins for user input or commands.

The custom keyboard UI must be consistent with those of similar applications and be thoroughly tested. Altered controls must support keyboard behavior that is equivalent to the behavior of standard controls.

A well-designed keyboard UI allows keyboard users to make extended selections such as selecting two or more items in a list or highlighting several paragraphs of text. The initiation point for an extended selection is called the anchor. The final point for the input focus is called the destination. When a user makes an extended selection, such as when highlighting a paragraph of text by holding the SHIFT key and moving the cursor, all of the items between the anchor and the destination will be in the selected state. Normally, all other items will not be selected, except when the CTRL key is held down.

A single selectable control may need to support a SPACEBAR, CTRL + arrow key, or arrow keys. In a multiple list-view control, the SPACEBAR key in combination with a modifier key and arrow key are needed for selection, input focus, and anchor navigation.

For more information, see Dialog Box and Common Controls Shortcut Keys .

One type of extended selection that a user can make is a linear extended selection. The Details view mode of Windows Explorer is an example of a multiple-selection list in a linear, or single, dimension. Figure 6 shows a multiple-selection list-view control consisting of five folders (labeled A through E). The following procedure illustrates the behavior of an anchor and extended selection while navigating the list shown in Figure 6:

  • Locate the initial input focus by selecting Folder A only.
  • Press the DOWN ARROW key. Folder A becomes unselected; Folder B becomes selected, and receives the anchor and the input focus.
  • Press the SHIFT+DOWN ARROW key. Folder B remains selected and retains the anchor, while Folder C becomes selected and gains the input focus. (The anchor did not move because Folder C was selected using an extended selection operation.)
  • Press the CTRL+DOWN ARROW key. Folders B and C remain selected and Folder B retains the anchor. Folder D gains the input focus. (Folder D did not get selected because the CTRL key was pressed.)
  • Press the CTRL+DOWN ARROW key. Folders B and C remain selected, Folder B retains the anchor, and Folder E gets the input focus.
  • Press SHIFT+SPACEBAR to extend the selection. Folders B, C, D and E become selected, Folder B retains the anchor, and Folder E keeps the input focus.
  • Press CTRL+SPACEBAR to deselect Folder E. Folders B, C, and D remain selected, but the anchor moves to Folder E, which retains the input focus.
  • Press the CTRL+UP ARROW key twice. Folder C gets the input focus, Folder E retains the anchor, and Folders B through D remains selected.
  • Press SHIFT+SPACEBAR. The selection extended to Folder C from the anchor location (Folder E, which is unselected). Folders C, D, and E become selected, but Folder B becomes unselected.

List-view controls are flexible and compatible with keyboard UIs and assistive technologies. Although multiple-selection list boxes are not visually distinct from extended-selection list boxes, you might consider designing them to appear as a scrollable list of owner-drawn check boxes as shown in the image on the right in Figure 6. Check boxes are sometimes easier for keyboard users to view and select. You can use window styles that are supported by common controls, such as LVS_EX_CHECKBOXES for a list-view control. Or you can use Microsoft Active Accessibility to include information for the additional owner-drawn graphics.

figure 6. multiple-selection list

Another type ofexte extended selection that a user can make is a two-dimensional extended selection. The following table illustrates an array that consists of three rows of four columns.

The following procedures illustrate two methods for selecting Cell (1,2) and extend the selection to include Cell (2,3):

  • Select all items in a rectangular region between the anchor and current input focus (cells (1,2), (1,3), (2,2) and (2,3) will be selected). Use this method in cases where the right edge of a row is not connected to the left edge of the next row, such as in table grid controls.
  • Select all items from the anchor to the current input focus, read in logical order (from left to right and top to bottom in a dialog box written in English). Cells (1,2), (1,3), (1,4), (2,1), (2,2) and (2,3) will be selected. Use this method in cases where the RIGHT ARROW key wraps from the right edge of one row to the left edge of the next. This is the typical behavior for most edit controls, although some may support a block selection, which is similar to the linear extended selection example.

Any attempt to create an unsupported extended or disjointed selection, such as scrolling beyond the last item in a list, must activate an error event that generates a warning sound. In addition, the current selection must not be changed in any way by the operation. For example, in the application, an error event must occur if a user tries to select a third item when only two items are permitted.

Some applications ignore the modifier keys intended to make the selection extended or disjointed. This is critical for usability; users may not be aware that the selection is unintentional because they cannot perceive the visual feedback due to a disability, or the items are scrolled out of view.

To prevent illegal multiple-selection operations, follow these guidelines:

Provide feedback at the end of lists.

When a user navigates through a list of items, such as icons in a list-view control, or list controls in a dialog box, the user needs to know when they have reached the end of a list.

If the user tries to navigate beyond the last item in a list, the application must not move the input focus and must call the PlaySound functionto play the default sound that normally signals invalid input. Stopping with feedback is generally preferable. Moving the input focus back to the first object in the list without feedback may be problematic. For example, users who are blind or have low vision may not realize that they have returned to the beginning of a list.

Activate warning events.

Whenever the user presses an invalid key or a navigation key fails to move the input focus, the application must activate a warning event. For example, the application must activate the warning event when the insertion point is on the left end of a text field and the user presses the LEFT ARROW key to try to move the input focus beyond the field. When activating the warning event, call the PlaySound function to play the default sound.

Auto-completion is a function that automatically completes a text string, or suggests possible matches for a text string, as the user enters it from the keyboard. If your application provides auto-completion, be sure that it meets the following criteria:

  • An application should not attempt to complete a string until there is sufficient information to identify the string among the available or predefined values.
  • When the string has been identified, the remainder of the string should appear immediately after the portion already entered, in a selected state. Therefore, any additional characters that the user types will replace the text suggested by the auto-completion function. At this point, additional text will be suggested. It can also behave exactly like having a partially selected string in an edit control.

Avoid using the GetAsyncKeyState function to retrieve the state of a key or a mouse button, except when absolutely necessary. GetAsyncKeyState queries the hardware driver to determine the physical key or button state, but ignores any keys being artificially held down or simulated by accessibility aids.

When possible, you must use the GetKey GetKeyState function, which correctly reflects any simulated input. GetAsyncKeyState can, however, be called in certain cases, such as when the user types a key to interrupt a lengthy processing task.

When handling mouse drag operations, you must avoid using the GetAsyncKeyState function to detect when a mouse button has been released. Instead, you must use the SetCapture function and wait for a button-up message.

If you use the GetAsyncKeyState function, the results might differ from those obtained using other Windows functions and messages. This can cause your application to behave inconsistently with other software on the system.

Input Focus Location

Most assistive technologies need to know the location of the input focus. For example, screen readers use it to determine the text or object that the user is working with, and screen-magnification utilities use it to determine which objects to pan and zoom in on. Other utilities, such as an on-screen keyboard, use it to rearrange windows to avoid covering the selected object.

It is important for accessibility that applications display the input focus consistently both to the user and programmatically for the developer. The standard controls in Windows-based applications already have appropriate support for the input focus, and additional work is usually not necessary. However, owner-drawn custom controls may require extra work to expose additional information or newly added behaviors.

When designing a keyboard UI, use the following guidelines for input focus:

Make the input focus obvious.

Make input focus visually distinguishable in a way that is obvious, intuitive, and easily seen. Avoid using indicators that are subtle, or provide an option to replace them with an indicator that is highly visible. In Microsoft Windows XP, the size system input focus rectangle became sizeable, and the setting values are stored in SPI_GETFOCUSBORDERWIDTH and SPI_GETFOCUSBORDERHEIGHT. For a custom control, call the DrawFocusRect function or draw lines with the size set by the system parameters.

Display an input focus indicator.

Display an input focus indicator when the window first opens or becomes active.

For exceptions to this guideline, see Input Focus Exceptions .

Show input focus only in the active window.

An application must hide any input focus indicator when the window loses the input focus. If input focus goes to a control off-screen, the window control must scroll into a view that can show the input focus.

Show only one input focus indicator at a time.

The input focus can be only in one place at any time. If a window has separate panes, only one pane must have the input focus. Input focus indicators in other panes must be hidden.

It is often important to show an inactive selection in the window or pane that does not have the input focus. However the input focus indicator must never appear in an inactive window or pane.

Distinguish between input focus and selection.

Design your UI so that input focus and selection are displayed separately even though they may usually be linked. This allows applications to support multiple or disjointed selection when needed, and can allow applications to show an inactive selection in a window or pane that does not have the input focus. For example, in a list-view control, a selected item is highlighted with a dotted rectangle around it.

Windows common controls expose the input focus automatically, but you must use Microsoft Active Accessibility to expose the input focus location for custom controls or window contents in your application. Use the following procedure to expose input focus programmatically in your application:

  • Call NotifyWinEvent when the input focus moves to an object that is not an entire window.
  • Handle the WM_GETOBJECT message when used to query the input focus object.
  • Support the IAccessible::get_accFocus property for custom UI elements that are displayed with the Microsoft Active Accessibility IAccessible COM interface. For more information, see Microsoft Active Accessibility .

A selected window does not have to show an input focus indicator in these situations:

  • Keystrokes apply to the entire window area, such as when the only valid action is to activate a menu.
  • The Keyboard Preference flag is set.
  • The input focus is returning to a window, which previously showed the input focus on an object.
  • Pressing the TAB key causes the input focus to move to the second item in the window.

Sometimes extended or disjointed selection makes it difficult to determine the input focus location. You should consider the input focus independent of a selection, even when they are located in the same position. The following topics provide examples that help to clarify this distinction.

When a user moves an insertion bar within text, it is usually shown as a blinking vertical bar called a system cursor, shown in Figure 7. The cursor can be placed anywhere on the screen, made into any shape or size, and if needed, made invisible. When an application draws its own insertion point, it must still move the cursor invisibly, tracking the visible indicator's location and bounding rectangle.

figure 7. text with flashing cursor

The Windows 2000 operating system and later versions support system parameters to specify the width of the cursor through SPI_GETCARETWIDTH. A user can change the settings through Accessibility Options in Control Panel. An application that draws its own insertion point must follow the settings specified for the system.

The cursor must be widened from the base insertion point toward the selected text direction. The direction may change with the edit box orientation or the language in which the user is typing. In Microsoft Windows and Office with right-to-left language support, a small indicator shows the direction of the insertion point.

The cursor must be sized and positioned to cover the screen element's bounding rectangle, so that screen magnification tools can zoom into any part of the object. This helps the user and the accessibility tools to look for the accurate label and size.

To size and shape the system cursor:

  • Call the CreateCaret function to set the focus size and shape.
  • Call the SetCaretPos function to move the cursor to where the visual input focus indicator is located, such as a highlighted cell, icon, or button.
  • Call the ShowCaret function to make the cursor visible if needed. An application can keep the cursor invisible by not calling the ShowCaret function.
  • When the input focus is moved to a different sized object, the application must call the DestroyCaret function, and start over from the CreateCaret function to size and locate its new input focus position.

When the window is no longer active or does not have a visual input focus indicator, the application must remove the visual indicator and call the DestroyCaret function.

When a user makes an extended selection, one end of the selection is the active or moving end. This represents the definitive input focus location.

Applications must always display a visible insertion point at the selection's active end to indicate the input focus location, as shown in Figure 8.

figure 8. text showing visible insertion point at the selection s active end

When a user moves the input focus to an object, such as an icon or bitmap with an adjacent label, applications must position the system caret or cursor invisibly over that object as well as the visual indicator.

If the input focus is within a group of multiple selectable graphic objects, applications must indicate the selected objects with highlighting, and the object with focus with dotted lines. An object that is selected and has the input focus must be distinguishable from other selected objects that do not have the focus and may have both the highlighted and dotted line attributes. To locate the input focus programmatically, applications must locate the invisible system cursor to cover the object.

Disjointed selection is usually supported among discrete items and sometimes it is supported in a document. The input focus can be located on one object, and the visible input focus must be clearly distinguished with the selections. The selected item may be located in or out of the selection.

When an application has a custom control that does not have its own window handle, such as a windowless custom-command button, the input focus is associated with the entire control. An invisible system cursor must cover the input focus completely. If such controls contain multiple UI components that behave as individual controls, the input focus must be adequately located on the individual subcomponents.

If the control has its own window handle, it might not be necessary to identify the location by using the system cursor. If the control is a windowless control, use the tools available from Microsoft Active Accessibility to test the input focus.

For more information, see Input Focus in Composite Custom Controls and Input Focus Verification .

A composite control, such as a list box, positions the input focus on individual elements within the larger control. In a composite control, an application must display the input focus location as the bounding rectangle of the element that has the input focus. Even though the application may consider the collection of items to be a single control, each item must be treated as a separate control element for the purpose of exposing input focus.

The drop-down list is a typical composite control with an edit box and a list. When the control opens the drop-down list, the focus is located on the highlighted item in the list, as shown in Figure 9.

figure 9. drop-down list box

Within a spreadsheet or grid control, the input focus is usually placed on a cell, rather than in the formula bar. A bold cell border indicates the input focus, and an application must display the input focus location as a bounding rectangle over the selected cell. If a user begins editing the contents of a cell, the application must indicate the input focus appropriately depending on the content text or graphics.

Although applications must provide keyboard access for all functionality, some objects can only be manipulated using a mouse. Whenever a mouse selects the object and the object can receive keyboard input, an application must display the bounding rectangle with the appropriate system input focus. The application can release the input focus when the input focus is moved to another object that may take future keyboard input.

Testing tools are available for verifying input focus location and size. In the Microsoft Active Accessibility SDK, Inspect Objects (Inspect.exe) and Accessible Event Watcher (AccEvent.exe) can be used to test the location of the system input focus and the cursor that is displayed to assistive technologies.

Microsoft Magnifier is also a useful tool for checking the input focus and cursor availability, but does not always give detailed information. For official application testing, it is recommended that the testing tools available in the Microsoft Active Accessibility SDK be used. These tools can show exact locations and events coming from the input focus.

For more information about the Inspect Objects and Accessible Event Watcher testing tools, see Testing Tools . For related programming interfaces, see Active Accessibility User Interface Services .

The Windows operating system supports many system parameters that share the system-wide option settings between applications and the system itself. Applications can access the system-wide settings by calling the SystemParametersInfo function with the specific SPI values. Applications that use the settings must watch for the WM_SETTINGSCHANGE message to respond or adjust configurations adequately.

There are many keyboard UI-related system parameters available in the operating system. Many of the system parameter values have read and write procedures through the API, although an application usually only reads those settings because most of the system parameters are controlled through Control Panel. System parameters and their corresponding API names and descriptions are shown in the following table.

Keyboard UI Related System Parameters

SPI_GETSERIALKEYS is not listed here because it is only supported in earlier Windows platforms. The input from serial key devices must be received by applications in the same manner as those from standard keyboard or mouse input devices.

An application that normally hides some keyboard UI elements or omits some keyboard mechanisms altogether must present them when the keyboard preference flag (SPI_GETKEYBOARDPREF) is set. The flag, which is set by the user in Control Panel, advises an application that the user relies on the keyboard rather than a mouse, so additional support must be provided when appropriate.

For more information about UI design and development, see User Interface and Microsoft Windows User Experience (Microsoft Press; ISBN: 0-7356-0566-1).

For more information about assistive technology products, see Assistive Technology Products .

As noted in the Designing the Keyboard UI section, it is important for applications to be consistent with other applications when using shortcut keys. This section introduces a series of shortcut keys that are used in Windows. To be consistent with other Windows-based applications, it is recommended that you map shortcut keys in a similar way. For more information, see General Shortcut Keys for Applications .

System-Wide Shortcut Keys

System-Wide Accessibility Options and Tools Shortcut Keys

This section does not list all keyboard shortcuts offered by accessibility tools. For more information about keyboard shortcuts offered by a particular accessibility tool, please see the online Help for that tool.

General Shortcut Keys for Applications

Navigation and Window Controls Shortcut Keys

Menu Controls Shortcut Keys

Edit Box Shortcut Keys

Dialog Box and Common Controls Shortcut Keys

Arrow keys, PAGE UP or PAGE DOWN, HOME, and END keys for general navigation are omitted from the next table.

Windows Explorer Shortcut Keys

The shortcut keys in the next table are presented only as examples and do not represent all of the available shortcut keys.

Microsoft Office XP Shortcut Keys

The shortcut keys in the next table are presented only as examples and do not represent all of the available shortcut keys. A complete list of shortcut keys is provided in the online documentation of each Microsoft Office application.

Additional resources

customize keyboard navigation keys

Keyboard shortcuts in OneNote

Many users find that using an external keyboard with keyboard shortcuts for OneNote helps them work more efficiently. For users with mobility or vision disabilities, keyboard shortcuts can be easier than using the touchscreen and are an essential alternative to using a mouse.

The shortcuts in this topic refer to the US keyboard layout. Keys for other layouts might not correspond exactly to the keys on a US keyboard.

A plus sign (+) in a shortcut means that you need to press multiple keys at the same time.

A comma sign (,) in a shortcut means that you need to press multiple keys in order.

This article lists the keyboard shortcuts for OneNote for Windows desktop.

For information on the differences between the app versions, go to  What's the difference between the OneNote versions?

To quickly find a shortcut in this article, you can use Search. Press Ctrl+F, and then type your search words.

In this topic

Frequently used shortcuts, format notes, insert items on a page, work with tables, select text and objects, use outlines, specify language settings, work with pages, work with notebooks and sections, search through notes, share notes, protect notes.

Top of Page

Note:  To change the writing direction for your notes, you must first enable one or more right-to-left languages in Set the Office Language Preferences . For instructions, go to  Add an editing or authoring language or set language preferences in Office .

OneNote help & learning

Use a screen reader to explore and navigate OneNote

Basic tasks using a screen reader with OneNote

Screen reader support for OneNote

This article lists the keyboard shortcuts for OneNote for Windows 10.

Navigate OneNote for Windows 10 with only the keyboard

Type and edit notes

Add items to a page, select notes and objects, search notes.

This table lists the most frequently used shortcuts in OneNote for Windows 10.

Navigate OneNote for Windows 10 with only the keyboard

The table below lists the shortcuts you can use to navigate in OneNote for Windows 10.

This article lists the keyboard shortcuts for OneNote for Mac.

The settings in some versions of the operating system and some utility applications might conflict with keyboard shortcuts and function key operations in Microsoft 365 for Mac. For information about changing the key assignment for a keyboard shortcut, refer to the operating system help for your version of macOS or your utility application.

If you don't find a keyboard shortcut here that meets your needs, you can create a custom keyboard shortcut. For instructions, go to Create a custom keyboard shortcut for Office for Mac .

To quickly find a shortcut in this article, you can use Search. Press Command+F, and then type your search words.

Enable full keyboard access

Navigate within pages, edit text and graphics.

For the best experience using your keyboard with the ribbon, enable your keyboard to access all controls.

To open System Preferences , do one of the following:

Press Control+F2 to move the focus to the menu bar, and then press Spacebar. Press the Down arrow key until you reach the System Preferences option, and then press Spacebar.

Press Command+Spacebar, type system preferences , and press Return.

In the System Preferences ,   select  Accessibility .

In the Accessibility  dialog box,   select the Navigation  tab.

Select the Enable Full Keyboard Access  checkbox.

Top of Page  

This table lists the most frequently used shortcuts in OneNote for Mac.

This article lists the keyboard shortcuts for OneNote for the web.

If you use Narrator with the Windows 10 Fall Creators Update, you have to turn off scan mode in order to edit documents, spreadsheets, or presentations with Microsoft 365 for the web. For more information, refer to Turn off virtual or browse mode in screen readers in Windows 10 Fall Creators Update .

When you use OneNote for the web, we recommend that you use Microsoft Edge as your web browser. Because OneNote for the web runs in your web browser, the keyboard shortcuts are different from those in the desktop program. For example, you’ll use Ctrl+F6 instead of F6 for jumping in and out of the commands. Also, common shortcuts like F1 (Help) and Ctrl+O (Open) apply to the web browser – not OneNote for the web.

Navigate the ribbon and panes in Viewing mode

Navigate the ribbon and panes in editing mode, select text and graphics, edit content, format text.

Note:  When a cell, column, or row is selected, alignment applies to the content of the selected cells. When a table is selected, alignment is applied to the table but does not affect alignment within cells.

Technical support for customers with disabilities

Microsoft wants to provide the best possible experience for all our customers. If you have a disability or questions related to accessibility, please contact the Microsoft Disability Answer Desk for technical assistance. The Disability Answer Desk support team is trained in using many popular assistive technologies and can offer assistance in English, Spanish, French, and American Sign Language. Please go to the Microsoft Disability Answer Desk site to find out the contact details for your region.

If you are a government, commercial, or enterprise user, please contact the enterprise Disability Answer Desk .


Need more help?

Want more options.

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

customize keyboard navigation keys

Microsoft 365 subscription benefits

customize keyboard navigation keys

Microsoft 365 training

customize keyboard navigation keys

Microsoft security

customize keyboard navigation keys

Accessibility center

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.

customize keyboard navigation keys

Ask the Microsoft Community

customize keyboard navigation keys

Microsoft Tech Community

customize keyboard navigation keys

Windows Insiders

Microsoft 365 Insiders

Find solutions to common problems or get help from a support agent.

customize keyboard navigation keys

Online support

Was this information helpful?

Thank you for your feedback.

customize keyboard navigation keys

DevExtreme v23.1 is now available.

Explore our newest features/capabilities and share your thoughts with us.

  • Simple Array
  • OData Service
  • Custom Data Source
  • Web API Service
  • SignalR Service
  • Real-Time Updates
  • Record Paging
  • Local Virtual Scrolling
  • Remote Virtual Scrolling
  • Horizontal Virtual Scrolling
  • Infinite Scrolling
  • Row Editing and Editing Events
  • Cell Editing and Editing API
  • Batch Editing
  • Form Editing
  • Popup Editing
  • Custom Editors
  • Data Validation
  • Cascading Lookups
  • Collaborative Editing
  • CRUD Operations

Customize Keyboard Navigation

  • Batch Update Request
  • Edit State Management
  • Custom New Record Position
  • Record Grouping
  • Remote Grouping
  • Multiple Sorting
  • Filtering API
  • Filter Panel
  • Column Header Filter
  • Focused Row
  • Local Reordering
  • Remote Reordering
  • Drag & Drop Between Two Grids
  • Row Selection
  • Multiple Record Selection
  • Multiple Record Selection API
  • Deferred Selection
  • Column Customization
  • Columns based on a Data Source
  • Multi-Level Headers (Bands)
  • Column Resizing
  • Command Column Customization
  • Column Chooser
  • State Persistence
  • Right-To-Left Support
  • Column Template
  • Row Template
  • Column 3rd Party Engine Template
  • Row 3rd Party Engine Template
  • Cell Customization
  • Toolbar Customization
  • Total Summaries
  • Group Summaries
  • Custom Summaries
  • Recalculate While Editing
  • Master-Detail View
  • Master-Detail API
  • Advanced Master-Detail View
  • Header and Footer
  • Export Multiple Grids
  • Export Images
  • Grid Adaptability Overview
  • Grid Columns Hiding Priority
  • Keyboard Navigation
  • OLAP Data Source
  • Integrated Field Chooser
  • Standalone Field Chooser
  • Field Panel
  • Header Filter
  • Running Totals
  • Summary Display Modes
  • Virtual Scrolling
  • Chart Integration
  • Layout Customization
  • Simple Array: Plain Structure
  • Simple Array: Hierarchical Structure
  • Load Data on Demand
  • Row Editing
  • Cell Editing
  • Node Drag & Drop
  • Single Row Selection
  • Multiple Row Selection
  • Using Search Panel
  • Using Filter Row
  • Filter Modes
  • Column Reordering
  • Column Fixing
  • Adaptability
  • Google Calendar Integration
  • Basic Views
  • Current Time Indicator
  • Time Zone Support
  • Recurring Appointments
  • Custom Drag & Drop
  • All Day Panel Mode
  • Group Orientation
  • Grouping By Date
  • Custom Templates
  • Disabled Date/Time Ranges
  • Customize Individual Views
  • Increased View Duration
  • Limit the Appointment Count per Cell
  • Context Menu Integration
  • Output Formats
  • Node and Edge Arrays
  • Node List: Linear Array
  • Node List: Hierarchical Array
  • Advanced Data Binding
  • OrgChart Shapes
  • Background Images
  • Shapes with Base Type
  • Templates with Editing
  • Read Only Mode
  • Simple View
  • Item Selection
  • Editing Restrictions
  • UI Customization
  • Client-Side Data Processing
  • Server-Side Data Processing
  • Dynamic Series from the DataSource
  • Load Data On Demand
  • Spline Area
  • Step Area with Gaps
  • Standard Bar
  • Side-by-Side Bar
  • Stacked Bar
  • Full Stacked Bar
  • Side-by-Side Stacked Bar
  • Drill-Down Chart
  • Side-by-Side Full-Stacked Bar
  • Auto-Calculated Bar Width
  • Custom Bar Width
  • Color Each Bar Differently
  • Customize Points and Labels
  • Scale Breaks
  • Bi-Directional Bar Chart
  • Custom Annotations
  • Bullet Charts
  • Doughnut Selection
  • Doughnut with Top N Series
  • Doughnut with Multiple Series
  • Custom Label in the Center
  • Candlestick
  • Points Aggregation
  • Chart with Annotations
  • Resolved Axis Label Overlapping
  • Point Image
  • Logarithmic vs Linear Axes
  • Pies with Equal Sizes
  • Pie with Custom Labels
  • Pie with Small Values Grouped
  • Pie with Resolved Label Overlapping
  • Pie with Annotations
  • Pie with Custom Fill Styles
  • Scatter Logarithmic Axis
  • Custom Axis Position
  • Continuous Data
  • Discrete Data
  • Periodic Data
  • Inverted Chart
  • Polar Chart with Annotations
  • Timeline Chart
  • Area Sparklines
  • Bar Sparklines
  • Winloss Sparklines
  • Hierarchical Data Structure
  • Plain Data Structure
  • Tiling Algorithms
  • Colorization
  • Funnel Chart
  • Pyramid Chart
  • Sankey Chart
  • Multiple Axes
  • Multiple Panes
  • Pareto Chart
  • Custom Legend Markers
  • Discrete Aggregation
  • Axis Label Templates
  • Export and Printing API
  • Export Several Charts
  • Export Custom Markup
  • Multiple Series Selection
  • Multiple Point Selection
  • API - Select a Point
  • API - Display a Tooltip
  • Tooltips: HTML Markup Support
  • Zooming on Area Selection
  • Zooming and Panning
  • Zooming and Panning API
  • Discrete Axis Zooming and Panning
  • Polar Chart Zooming and Panning API
  • Data Binding and Editing
  • Chart Appearance
  • Task Template
  • Context Menu
  • Strip Lines
  • Export to PDF
  • Update Circular Gauge Data at Runtime
  • Update Linear Gauge Data at Runtime
  • Update Bar Gauge Data at Runtime
  • Labels Customization
  • Tooltip and Legend
  • Variable Number of Bars
  • Palette for Ranges
  • Scale Minor Ticks
  • Scale Label Formatting
  • Different Value Indicator Types
  • Different Subvalue Indicator Types
  • Subvalue Indicator Text Formatting
  • Custom Layout
  • Angles Customization
  • Title and Center Label Customization
  • Gauge Tooltip
  • Value Indicators API
  • Scale Custom Tick Interval
  • Scale Custom Tick Values
  • Base Value for Range Bar
  • Variable Number of Subvalue Indicators
  • Left or Right Position
  • Top or Bottom Position
  • Tab Drag & Drop
  • Node Selection and Customization
  • Virtual Mode
  • TreeView with Search Bar
  • ContextMenu Integration
  • Drag & Drop for Plain Data Structure
  • Drag & Drop for Hierarchical Data Structure
  • Right-to-Left Support
  • Autocomplete
  • Single Selection
  • Multiple Selection
  • Search and Editing
  • Customize Drop-Down Button
  • Grouped Items
  • Tag Count Limitation
  • Custom Text Editor Buttons
  • Editor Appearance Variants
  • Button Group
  • With Data Grid
  • Customization
  • Customize Item
  • Grouped Fields
  • Columns Adaptability
  • Customize Fields at Runtime
  • Radio Group
  • Numeric Scale (Lightweight)
  • Numeric Scale
  • Date-Time Scale (Lightweight)
  • Date-Time Scale
  • Logarithmic Scale
  • Discrete scale
  • Custom Formatting
  • Use Range Selection for Calculation
  • Use Range Selection for Filtering
  • Image on Background
  • Chart on Background
  • Customized Chart on Background
  • Chart on Background with Series Template
  • Range Slider
  • Responsive Box
  • Scroll View
  • Physical File System
  • Entity Framework ORM
  • Azure Server-Side Binding
  • Azure Client-Side Binding
  • Hierarchical JS Structure
  • Custom Thumbnails
  • Toolbar and Context Menu
  • Form Upload
  • Async Upload
  • Chunk Uploading
  • Direct Upload to Azure
  • Custom Drop Zone
  • Popover Mode
  • Predefined Types
  • Floating Action Button
  • Drop Down Button
  • Item Template
  • Item 3rd Party Engine Template
  • Item Deletion UI
  • Grouped List
  • List with Search Bar
  • List Selection
  • Item Drag & Drop
  • Handle Value Change
  • Providers and Types
  • Colors Customization
  • Zooming and Centering
  • Image Markers
  • Bubble Markers
  • Pie Markers
  • Dynamic Viewport
  • Area with Labels and Two Legends
  • Custom Projection
  • Multiple Layers
  • Custom Map Data
  • Load Indicator
  • Progress Bar
  • Using Globalize

The following properties customize keyboard navigation:

enterKeyAction Specifies the DataGrid's actions when a user presses Enter key:

  • "moveFocus" - moves focus in the enterKeyDirection
  • "startEdit" (default) - switches the cell to the editing state

enterKeyDirection Specifies the direction in which to move focus when a user presses Enter:

  • "row"
  • "column"
  • "none" (default)

editOnKeyPress Specifies whether to start entering a new cell value on a key press.

In this demo, you can use the controls under the DataGrid to change any of these properties.

ASP.NET Core mvc.

  • Stack Overflow Public questions & answers
  • Stack Overflow for Teams Where developers & technologists share private knowledge with coworkers
  • Talent Build your employer brand
  • Advertising Reach developers & technologists worldwide
  • Labs The future of collective knowledge sharing
  • About the company

Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Get early access and see previews of new features.

Conflicts between JAWS table navigation short keys and custom implemented navigation keys(i.e. arrow keys)

I am trying to make an HTML table accessible using keyboard as well as readable using JAWS Screen reader.

To make it keyboard accessible i am doing following things: - Added keypress events on table cells for arrow keys (left, right, top, bottom)

To make it JAWS readable i am doing following things: - Added caption,summary to table - Added scope=col to table headers - Added ARIA roles like Application, row, grid, gridcell

Keyboard navigation is working fine when the page is run without using JAWS. JAWS also read the table fine provided JAWS shortcuts are used.

When it is run with JAWS custom implemented keyboard navigation does not work properly. To move focus to different cell using custom implemented keyboard navigation (i.e. arrow keys), i have use INSERT + 3 key followed by an arrow key. This will move focus to different cell but it will not change JAWS current cell focus. So when JAWS read, it will read the cell other than the actual focused cell.

Example page URL : The above page supports custom keyboard navigation(i.e. arrow keys). Try to read above page using JAWS.

Please help to make it keyboard accessible at the same time readable by JAWS.

Appreciate your help!

Thanks a lot for your quick reply! That was very good information you provided.

However I have few more queries regarding this. It would be great if you could help.

JAWS provides support for various cursors like Virtual PC Cursor, PC Cursor, JAWS Cursor. As per my knowledge when we specify role="application", JAWS runs on PC Cursor and whatever functionality provided in website are usable using the provided keystrokes. The functionality i want to achieve especially with HTML Table is, user should be able to navigate using arrow keys as well as JAWS should read the currently focused content. So the doubt here is why JAWS does not readout currently focused content in in PC Cursor.(in html table it can be currently focused cell).

It would be helpful if you could explain, how the JAWS user ideally uses web sites using JAWS (specifically with information rendered in HTML Table).

I have a complex table having following features and would like it to be accessible by keyboard and readable by JAWS:

  • Table with expand/collapse icon. Clicking on Expand/Collapse icon or pressing +/- from keyboard the nested table should be visible to user.
  • Each row of table is having some action items and pressing a key or clicking on it should perform an action. (like each row shows unique product information and user can buy(action item) by pressing some key or clicking on a button. )

I tried using dojo grid and it provides to navigate using keyboard arrow keys and there is a JAWS shortcut to readout the currently focused cell i.e INSERT + UP Arrow.

  • accessibility
  • jaws-screen-reader
  • keyboard-navigation

Brian Tompsett - 汤莱恩's user avatar

  • 2 The whole idea that the reader will override (prevent) the page behavior is invalid and I don't think it's in any way ARIA compliant. There is a spec and when the reader does not work with correctly implemented widget than the reader have a problem. In other words stick with the ARIA spec and report this behavior. I think Jaws made this behavior (related to the virtual cursor) long ago (before the ARIA spec existed) and keep it as backward compatibility. –  Vladimir Iliev Sep 30, 2016 at 7:01

2 Answers 2

Try adding role="application" to the table or a surrounding element.

user1144642's user avatar

There is no way I know of to do what you want. I'm a Jaws user and the table is fine as is. I would not use your site if your custom navigation keys overrode Jaws defaults. The issue with overriding the defaults is it eliminates the ability to review character by character. If I wanted to check the spelling of a word in the table cell I could read letter by letter with the arrow keys. Disabling this ability of jaws is unacceptable. The reason I do not believe it is possible to do what you want is because Jaws uses a virtual buffer with information obtained from the internet browser to format the page in a way easier to read with a screen reader. In my experience it's murky where the boundary between the browser and Jaws is. This means that you probably cannot capture jaws specific keystrokes before Jaws does. Using the insert+3 key followed by an arrow key will not work with jaws because the key is being passed to the browser. This means the table focus is changing in the browser but there is no way to force that change in the model of the page Jaws uses.

Jared's user avatar

Your Answer

Sign up or log in, post as a guest.

Required, but never shown

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct .

Not the answer you're looking for? Browse other questions tagged html html-table accessibility jaws-screen-reader keyboard-navigation or ask your own question .

  • The Overflow Blog
  • Behind the scenes with OverflowAI Search
  • Featured on Meta
  • If more users could vote, would they engage more? Testing 1 reputation voting...
  • Alpha test for short survey in banner ad slots starting on week of September...
  • Temporary policy: Generative AI (e.g., ChatGPT) is banned
  • Expanding Discussions: Let's talk about flag reasons
  • Collectives Updates to the Community Bulletin in the Right Sidebar
  • OverflowAI Search is now available for alpha testing (September 13, 2023)

Hot Network Questions

  • How were the signs for logical and arithmetic operators decided?
  • Iterate through a list argument in Lilypond define-scheme-function
  • How to move forward after microagression allegations against my TA
  • Is the luggage trolley essential to get through Platform Nine and Three-Quarters?
  • How do I move the \fboxsep in the middle
  • Should I use a 15 amp or 20 amp breaker for a mini split with max current at 13.0 Amps?
  • Can the Faerie Fire spell be oriented in a small space to not affect allies?
  • Is it possible to redefine the limit operator to print Lim, not lim?
  • Feeling of falling during turbulence
  • Word Implying Lack of Caring Because You're Already (Wrong/Losing/a Failure/Behind/Insignificant)
  • What should I do if I am strongly burned out at work, but resigning now would cause problems for my coworkers and burn bridges?
  • general principles of piercing the protective cover of unfrozen microwave ready meals
  • Declaration of conformity to EMC Directive
  • why use template in year_month class?
  • Book of short stories I read as a kid; one story about a starving girl, one about a boy who stays forever young
  • How can circuits be prioritized depending on real time demand?
  • Panama Transit Visa
  • Very old telefilm about an invisible monster stalking a horror movie set
  • Can I provide citations in the abstract of a project proposal
  • In countries using Single Transferable Vote, how are voting results presented?
  • What does "you have hidden" mean in Luke 10:21?
  • 9 year old ATA red belt got beat at tournament
  • Can I duplicat (get a copy) of a 0.5 morph curve into a simple bezier curve?
  • When was the end of the floppy-only IBM PC clone?

customize keyboard navigation keys

Your privacy

By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy .


  1. Keyboard Shortcuts

    customize keyboard navigation keys

  2. Navigation cluster

    customize keyboard navigation keys

  3. Simple Keyboard Key Navigation examples

    customize keyboard navigation keys

  4. Keyboard क्या है? keyboard layout के types

    customize keyboard navigation keys

  5. Overview to the Readabler WordPress Accessibility Plugin

    customize keyboard navigation keys

  6. Keyboard

    customize keyboard navigation keys


  1. Customize YouTube on my keyboard 🔥🔥

  2. Customising my keyboard keys pt3 #pleasesubscribe #computerkeyboard


  4. How to make my custom keyboard

  5. Why Make a Custom Keybaord? #shorts #keyboard

  6. Seamless Keyboard Navigation: Tien's Expertise Unveiled


  1. How to Remap Your Keyboard

    Remapping 101: How to change your keyboard key output Typing on a foreign keyboard. Using your keyboard for PC gaming. Repurposing underused keys. You may notice that top row of letters on your keyboard, going left to right, spells QWERTY. However, there are other popular keyboard layouts that can help you type faster or more comfortably.

  2. Shortcuts, Hotkeys, Macros, Oh My: How to Remap Your Keyboard

    Click the + button, then set the key and map it to a specific action. So instead of hitting Ctrl + C to copy, you can assign that shortcut to the left Alt button on your keyboard. Add as many...

  3. How to Remap a Keyboard in Windows 10

    The easiest way to customize your keyboard is by using PowerToys, a free program made by Microsoft. It allows you to reassign keys and change your keyboard shortcuts using a simple interface. PowerToys also enables you to personalize the layout and appearance of the operating system. Can You Reassign Keyboard Keys?

  4. How to Remap Any Key or Shortcut on Windows 10

    In the "Keyboard Manager" settings, click "Remap a Key." When the "Remap Keyboard" window pops up, click the plus button ("+") to add a new key mapping. After that, you'll need to define which key you want to remap (in the "Key:" column), and what key or shortcut you want it to perform (in the "Mapped To:" column).

  5. Customize keyboard shortcuts

    Select Remove. Use just the keyboard to assign or remove a keyboard shortcut Press ALT+F, T to open the Word Options dialog box. Press DOWN ARROW to select Customize Ribbon. Press the TAB key repeatedly until Customize is selected at the bottom of the dialog box, and then press ENTER.

  6. How do I reassign hot keys for my keyboard?

    Microsoft accessories You can reassign some keys to access different commands, shortcuts, or Microsoft Mouse and Keyboard Center features to better fit your work style. Note: The options listed in this wizard vary depending on the key selected. For example, since you cannot reassign the Windows key, the only option available is to disable it.

  7. Using your keyboard

    Navigation keys. These keys are used for moving around in documents or webpages and editing text. They include the arrow keys, Home, End, Page Up, Page Down, Delete, and Insert. Numeric keypad. The numeric keypad is handy for entering numbers quickly. The keys are grouped together in a block like a conventional calculator or adding machine.

  8. How to customize the touch keyboard on Windows 11

    Create custom theme. To create a custom theme for the Windows 11 touch keyboard, use these steps: Open Settings. Click on Personalization. Click the Touch keyboard page from the right side. Source ...

  9. Use the keyboard to work with the ribbon

    Windows macOS Web Do tasks quickly without using the mouse by pressing a few keys—no matter where you are in a Microsoft 365 app. You can get to every command on the ribbon by using an access key—usually by pressing two to four keys. In this topic Use KeyTips to access the ribbon Keyboard shortcuts for KeyTips

  10. Keyboard shortcuts in Windows

    Windows 11 Windows 10 Keyboard shortcuts are keys or combinations of keys that provide an alternative way to do something that you'd typically do with a mouse. If you are trying to take a screenshot or screengrab, see How to take and annotate screenshots. Click an option below, and it'll open to display a table of related shortcuts:

  11. Change your keyboard layout

    Click the Keyboard layout button, and then select a keyboard layout. Note: If you don't see the Language bar, right-click the taskbar, point to Toolbars , and then click Language bar . To change the keyboard layout on the Welcome screen

  12. How to Customize Your Computer Keyboard

    Click on Start > Windows Accessories > Character Map. Double-click on one of the "a" keys that has an accent over it and then click on the Copy button. Return to the MKLC, paste the character in...

  13. HP PCs

    Windows key + h. Open the Dictation input feature. File Explorer. Windows key + e. Open a File Explorer window to browse the files and folders on your computer. Settings. Windows key + i. Open a Settings window where you can change the behavior of features in Windows.

  14. How to Remap Keyboard in Windows 10, 8, 7, and Vista

    1. KeyTweak. KeyTweak is a tool which offers multiple ways - three, to be precise - to remap a key. The first is using the virtual keyboard. This method allows you to choose a key that you want to map, and then select the key, from a drop-down menu, to which you want to map it.

  15. How to change your keyboard layout

    Windows 7 or Windows Vista. Click Start , type intl.cpl in the Start Search box, and then press ENTER. On the Keyboards and Language tab, click Change keyboards. Click Add. Expand the language that you want. For example, expand French (Canada). Expand Keyboard list, click to select the Canadian French check box, and then click OK.

  16. How To Create A Custom Keyboard Layout For Windows 10

    The dark grey keys represent keys like Tab, Shift, Caps, etc. Click inside an assignable key, and in the box that opens, enter what key/character you want to enter when that particular key is pressed. This will enter the default character for that key. If you want to record the shift state character for a key, click the All button on this same box.

  17. Guidelines for Keyboard User Interface Design

    Assigning keyboard navigation in windows or controls, such as dialog boxes. Using speech recognition technology for user input or commands. Creating controls by using markup language. Using client-side scripting or plug-ins for user input or commands. The custom keyboard UI must be consistent with those of similar applications and be thoroughly ...

  18. Keyboard shortcuts in Excel

    Press Ctrl+F, and then type your search words. If an action that you use often does not have a shortcut key, you can record a macro to create one. For instructions, go to Automate tasks with the Macro Recorder. Download our 50 time-saving Excel shortcuts quick tips guide.

  19. Customize keyboard layout including navigation keys

    Customize keyboard layout including navigation keysHelpful? Please support me on Patreon: thanks & praise to God, ...

  20. Visual Studio Code Key Bindings

    For example, key binding Cmd+\ in US keyboard layout will be shown as Ctrl+Shift+Alt+Cmd+7 when layout is changed to German. The dialog to enter key binding will assign the correct and desired key binding as per your keyboard layout. For doing more advanced keyboard shortcut customization, read Advanced Customization. Keymap extensions

  21. Keyboard shortcuts in OneNote

    OneNote Keyboard shortcuts in OneNote Keyboard shortcuts in OneNote OneNote for Microsoft 365 OneNote for Microsoft 365 for Mac More... Many users find that using an external keyboard with keyboard shortcuts for OneNote helps them work more efficiently.

  22. Customize Keyboard Navigation

    Customize Keyboard Navigation. The following properties customize keyboard navigation: enterKeyAction. Specifies the DataGrid's actions when a user presses Enter key: "moveFocus" - moves focus in the enterKeyDirection. "startEdit" (default) - switches the cell to the editing state. enterKeyDirection.

  23. Conflicts between JAWS table navigation short keys and custom

    When it is run with JAWS custom implemented keyboard navigation does not work properly. To move focus to different cell using custom implemented keyboard navigation (i.e. arrow keys), i have use INSERT + 3 key followed by an arrow key. This will move focus to different cell but it will not change JAWS current cell focus.