How to create Favorites by code / Command Window?
显示 更早的评论
I was used to create the shortcuts in R2017b and older via code:
jUtils = com.mathworks.mlwidgets.shortcuts.ShortcutUtils;
jUtils.addShortcutToBottom(sName,sCcallback,sIcon,sCategory, 'true');
Of course it does not work to create the new "favorites", but I would like to do so.
I have found the com.mathworks.mlwidgets.favoritecommands.FavoriteCommandProperties class with get/set methods, but if I got it right, I would Need some stuff from com.mathworks.mlwidgets.favoritecommands.FavoriteCommandActions, which has not constructor.
Any ideas out there, how to create favorites and their categories by code?
采纳的回答
更多回答(1 个)
Thomas
2025-10-7
移动:Stefanie Schwarz
2025-11-11
0 个投票
The solution was working fine for several releases, but with R2025b the last command:
fc.addCommand(newFavoriteCommand)
throws an error:
>> fc.addCommand(newFavoriteCommand)
ans =
[]
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at com.mathworks.mlwidgets.favoritecommands.FavoriteCommands.addCategoryIfNecessary(FavoriteCommands.java:575)
at com.mathworks.mlwidgets.favoritecommands.FavoriteCommands.addCommand(FavoriteCommands.java:259)
at com.mathworks.mlwidgets.favoritecommands.FavoriteCommands$3.run(FavoriteCommands.java:249)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Any idea how to do this in R2025b?
1 个评论
Stefanie Schwarz
2025-11-11
Unfortunately, the command line API discussed in this thread was never officially supported, and no longer works from R2025a.
If the goal is just to non-interactively add a few shortcuts to the Quick Access Toolbar, and not necessarily add them to the Favorites menu, there's the new mw.desktop.quickAccess Extension Point in 25a:
类别
在 帮助中心 和 File Exchange 中查找有关 Call Java from MATLAB 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!