Pass variables into set(frt,'W​indowButto​nDownFcn',​@mousePos)

5 visualizzazioni (ultimi 30 giorni)
Quick question, how can i pass some other variables that i want in mousePos
function mousePos(hObject,~)
mPos=get(hObject,'CurrentPoint');
finalPos(mPos,data)
The data variable is defined in the main function but i want to use it here too.

Risposta accettata

Walter Roberson
Walter Roberson il 15 Lug 2012
Modificato: Walter Roberson il 15 Lug 2012
set(frt, 'WindowButtonDownFcn', {@mousePos, data} )
and
function mousePos(hObject, ~, data)
Note: this will use the value of "data" as of the time the callback is created, and will not reflect any updates to "data" that are made after that.
  3 Commenti
Raldi
Raldi il 15 Lug 2012
Another thing, i was trying to save each rectangle i created so later on i can have acces to the position of the one i want. The code below is not working though.
for i = 1:compnum
id = [num2str(i)];
h.id = imrect(gca, compdata(i,:));
daspect([1,1,1])
end

Accedi per commentare.

Più risposte (1)

Xiangqi
Xiangqi il 27 Ago 2013
To Raldi,
Hi~ Have you found the way to update the value of "data" ?
I encountered the same problem and don't know how to update it.
Thanks for your help in advance.
Huang

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by