UIContextMenu when defined does not show in Matlab 2021b

51 views (last 30 days)
I have a class that inherits from matlab component container. I define a uiaxes in the setup method. Since, the setup method does not allow access to the parent figure of the object, I cannot add a uicontextmenu to the figure. To get around this I added a CreateFcn.
In the CreateFcn I define a uicontextmenu and add it to the uiaxes defined in the setup method. When I check the uiaxes object, the menu is added correctly. The menu although does not show up when I right click in the created GUI.
I have the same code and it works on every version after 2021b. Could someone help with how I can make this compatible with 2021b?

Answers (1)

Bruno Luong
Bruno Luong on 12 Nov 2024 at 6:09
uiaxes/uifigure are not compatible wit axes/figure. I recommend simply do not make a switch.
  2 Comments
aamir ibrahim
aamir ibrahim on 12 Nov 2024 at 16:41
Can you explain this. I am using uiaxes and uifigure.
aamir ibrahim
aamir ibrahim on 12 Nov 2024 at 17:59
This is what worked for me. In R2021b, I had to use a ButtonDownFcn for the uiaxes and then launch and position the context menu from the ButtonDownFcn. Although this does remove the default axes interactivity and I had to reset that manually using enableDefaultInteractivity.

Sign in to comment.

Categories

Find more on Interactive Control and Callbacks in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!