Interactive figure manipulation with App Designer
15 views (last 30 days)
Show older comments
Joris Lambrecht
on 14 Jun 2017
Commented: abdulla alyammahi
on 6 Apr 2020
I am in the early design stage of a GUI that involves interactive plotting (moving/adding/deleting points within graph via mouse clicks) similar to moveplot on File Exchange
I am new to App Designer, but it seems much easier to develop with than GUIDE (particularly for sharing data between callbacks and outside the GUI using the dot notation). It also supports tab groups which I plan to use, and seems better at graphically laying out UI elements and configuring them.
However, according to the manual: "Furthermore, UI figures do not support most of the interactive functionality that traditional figures support. For example, UI figures do not support printing, nor do they support mouse or keyboard interactions."
My GUI could always generate a new figure window (not uifigure), and that figure could handle the interactive stuff as in moveplot.
Another limitation I've noticed is that uilistbox (also uitextarea, uieditfield, uilabel) does not support HTML formatting whereas the uicontrol('Style','listbox'...) does (see: example). This affords much more flexibility than having to include a new textbox anytime a new font, font color, font size is required, and supports links and symbols.
I've used both GUIDE and built GUIs only from .m files in the past. App Designer intrigues me for my new design but I don't want to get burned after putting in a good amount of effort, only find out it doesn't have another feature I expected that requires another clunky workaround.
If you have experience with App Designer, are there other suggestions or warnings you could provide?
0 Comments
Accepted Answer
Ankita Nargundkar
on 21 Jun 2017
Developers are aware of lack of mouse click callback for a Figure in app designer. Html formatting is not documented feature, so is always subject to frequent changes. As a workaround, you could do individual text components created dynamically for each of the different sections of formatted text.
2 Comments
Marta
on 13 Dec 2017
Hi Ankita.
Thanks for the reply. Could you pass on an example code for how to create components dynamically? Could we use the position of the components as a way of tracking mouse positions in the App figures?
Many thanks! Marta
Philip Tamimi-Sarnikowski
on 5 Apr 2018
Hello
I am currently working on a GUI with the App designer. I am inquiring about the mouse click callback, as i need to register clicks on uiaxes and the specific location. Is this a feature that has been implemented since last year ? I do not seem to be able to find any documentation. Thank you in advance
More Answers (1)
Sebastian Bech-Terkilsen
on 28 Aug 2018
Hi Everyone, I encountered the same problem by trying to use imfreehand in a uifigure in an app. My workaround was to make a function outside of app designer which makes a figure pop-out which then carries the imfreehand. Then have any modifications assigned to the imfreehand be done inside the function and have your uifigure display the output image of the function.
1 Comment
abdulla alyammahi
on 6 Apr 2020
Hello, I would like to know how you made this happen, I have been trying and I have not been able to figure it out. Is it possible from within the app to make this pop-up appear?
See Also
Categories
Find more on Develop uifigure-Based Apps in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!