none
Navigating dynamic ribbon menu with keyboard RRS feed

  • Question

  • In a Word solution I'm working on currently I use quite long dynamic ribbon menus. They are alphabetically sorted and to increase user friendliness I would like to be able to select menu items using the keyboard. Of course this is possible by going up and down using arrow keys and selecting with Enter, but I would like to use a much faster and simpler way.

    Example: Pressing 'L' goes to the first item starting with L. Pressing 'L again goes to the next item starting with L.

    Alternatively one could continue by building a string, for example when pressing 'A' as the next letter after 'L', 'La' goes to the first item starting with La.

    Is there any way to achieve this with VBA or using an AddIn?

    Willy

    Wednesday, June 29, 2016 9:41 AM

Answers

  • Hi Willyv55,

    I try to find something that can able to achieve your requirement.

    but here in Fluent Ribbon there is no any kind of property or event available that can set the focus to the Ribbon controls.

    so that if you some how catch the keyboard action then also you are not able to focus a control and also not able to go to the next control that have match the keyboard key.

    also it may need to keyboard hooking which is not supported by this forum.

    the work around is that you can try to set the keytip of the control in Fluent Ribbon by creating VSTO Addin.

    using keytip you can set the shortcut key to access that control.

    you can see the image below in which you can find the keytip property of the control.

    For more information regarding KeyTip please visit the link below.

    RibbonButton.KeyTip Property

    Regards

    Deepak

    ,


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Thursday, June 30, 2016 1:10 AM
    Moderator

All replies

  • Hi Willyv55,

    I try to find something that can able to achieve your requirement.

    but here in Fluent Ribbon there is no any kind of property or event available that can set the focus to the Ribbon controls.

    so that if you some how catch the keyboard action then also you are not able to focus a control and also not able to go to the next control that have match the keyboard key.

    also it may need to keyboard hooking which is not supported by this forum.

    the work around is that you can try to set the keytip of the control in Fluent Ribbon by creating VSTO Addin.

    using keytip you can set the shortcut key to access that control.

    you can see the image below in which you can find the keytip property of the control.

    For more information regarding KeyTip please visit the link below.

    RibbonButton.KeyTip Property

    Regards

    Deepak

    ,


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Thursday, June 30, 2016 1:10 AM
    Moderator
  • Thanks for your reply and research, Deepak!

    I'm aware of KeyTip but it would be hard to use in the UI I was hoping to construct. Normally users would open my long menu's with the mouse. Pressing Alt to use a keytip would make the menu disappear again.

    Even when using keys all the way I would have little control as Office will construct its own shortcuts (like Y1, Y2 etc) and get in the way of a user-friendly operation.

    Good to get your opinion on this, maybe this will come in a later version.

    Willy

    Monday, July 4, 2016 8:48 PM
  • Hi Willyv55,

    you had mentioned that ,"maybe this will come in a later version."

    if you wish that should be there in new version then you have to give your feedback regarding this to office user voice.

    so can i ask you for which application you are developing this ribbon so that I can provide you a link of that user voice.

    then you can submit your feedback on that User Voice.

    when they will get the enough feedback regarding adding this functionality and feature then they will consider to add this feature in new version.

    Regards

    Deepak


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.


    Tuesday, July 5, 2016 2:34 AM
    Moderator
  • so can i ask you for which application you are developing this ribbon so that I can provide you a link of that user voice.


    At the moment I'm working on a Word project but this would really apply to all Office programs. What I wish for is a general UI capability which can be found in many other solutions.

    Willy


    • Edited by Willyv55 Tuesday, July 5, 2016 8:43 AM
    Tuesday, July 5, 2016 8:42 AM
  • Hi Willyv55,

    I can understand that you want to develop it generally so that it can support all office applications.

    but there is no general User Voice available for that. Each Application product has its own User Voice.

    so that we can give the feedback to particular User Voice.

    As currently you are working with Word Application so here below I had mentioned the link for the word User Voice.

    Kindly visit the link and submit your feedback.

    Word User Voice

    Thanks for your understanding

    Regards

    Deepak


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Tuesday, July 5, 2016 8:49 AM
    Moderator
  • Thanks, I'll follow up.

    Willy

    Tuesday, July 5, 2016 9:02 AM