Activating a UIControl element programmatically

2 views (last 30 days)
Lawrence
Lawrence on 9 Jul 2018
Commented: Lawrence on 10 Jul 2018
I've been playing around with the GUIDE tutorial app simple_gui, described here. Specifically, I am controlling the app programmatically and want to make sure I don't miss anything.
First, where I'm at so far:
I initialize the app with
h_sg = simple_gui;
Then, I can get handles to each control element with
h_mesh = h_sg.Children(4);
h_popup = h_sg.Children(1);
Finally, I can control the dataset menu and plot buttons like this:
h_popup.Value = 2;
notify(h_popup, 'Action');
notify(h_mesh, 'Action');
My main question is, am I missing anything? Is there anything else MATLAB does when you interact with a UIControl besides set the value and notify listeners (a.k.a. call notify())?

Answers (1)

Sean de Wolski
Sean de Wolski on 10 Jul 2018
You should really consider using appdesigner. Not only is there better support for listeners, there's also a ui testing framework that allows you to do whatever interactions you want programmatically:
It's also where all of MathWorks development is focused and has already far surpassed the capabilities of GUIDE.
  3 Comments
Lawrence
Lawrence on 10 Jul 2018
Thank you. It is useful to know that conversion tools exist. We wouldn't be able to make the switch, however, until toolbars and context menus are supported.

Sign in to comment.

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!