Need interface suggestions on how best to let the user reorder a list of objects.

2 views (last 30 days)
Johan C
Johan C on 11 Aug 2021
Commented: Johan C on 17 Aug 2021
I have created an app in app desginer where i have a list of objects as following
They are created form a table that holds all the values and graphic, but also a Order number and ID
I have touble finding a good solution to how I let the user change the order (moving one line of objects above or below a another)
Any suggestions are welcome.
Best JC
  1 Comment
Johan C
Johan C on 11 Aug 2021
Here some of the things i have been looking at.
Pull and drop - not in matlab it seems
Two buttons beside each line, move one step up or down - many clicks to move a line far.
uicontextmenu - cant find what object line that evoke the called to create the menu when needed on right click and button that on left click opens the context menu cant place it next to it as I cant find the posstion of the button with scroll enable.

Sign in to comment.

Accepted Answer

Jasmine Powell
Jasmine Powell on 13 Aug 2021
Hi Johan, you mentioned looking into using a context menu to provide options to reorder the rows in your app. This could work using the CurrentObject property of the UI figure, which stores the most recently clicked object in the figure.
For example, you can add this code to the MenuSelectedFcn callback of the relevant menu item to store the component that was right-clicked to bring up the context menu, and then use that info to rearrange the order:
selected = app.UIFigure.CurrentObject;

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!