matlab GUI: How to access the name/tag of a function?

4 vues (au cours des 30 derniers jours)
Dominic Noel Kluck
Dominic Noel Kluck le 8 Mai 2023
I have over 30 push buttons in a GUI which all shoud behave the same. Therefore I want to create an external function. Furthermore I need to access the name/tag of the function connected to the desired push button. Here is an example code which is automatically created by Matlab after creating a push button in a GUI:
function push_X_Callback(hObject, eventdata, handles)
X represents any possible occuring number from 1 to 37 which is why I need to get acces to the function name "push_X_Callback" which I then can get the "X" from.
Thanks in advance
Dominic

Réponse acceptée

Steven Lord
Steven Lord le 8 Mai 2023
If they all behave exactly the same, why not give them the exact same callback function? The first input to the callback is the object whose callback is executing.
"Graphics callback functions must accept at least two input arguments:
  • The graphics object whose callback is executing — Use this argument within your callback function to refer to the object.
  • The event data structure — Use this argument within your callback function to access information about the user action that is specific to the callback property and the object. This structure is empty for many graphics object callbacks."
  2 commentaires
Walter Roberson
Walter Roberson le 8 Mai 2023
To expand slightly:
Once you have the graphics object that the callback is about (because it is the first parameter to the callback) then you can ask to get the Tag property of the object.
this_tag = hObject.Tag;
Dominic Noel Kluck
Dominic Noel Kluck le 17 Mai 2023
Thank you both very much!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Interactive Control and Callbacks dans Help Center et File Exchange

Produits


Version

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by