How to obtain information from handle structure?
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Valeriy
am 20 Jan. 2018
Kommentiert: Walter Roberson
am 21 Jan. 2018
Hi everybody, I have following situation
function outParameters = Main(inParameters)
...
Doing something
...
h = figure(KeyPressFCN,@WhatPressed);
plot(WhatNecessary);
...
function WhatPressed(src, evnt)
switch evnt.Key
case 'a'
...
ProcessedData
case 'b'
...
end
end % of WhatPressed
outParameters = workWith(ProcessedData);
end % of Main
In above version I calculated ProcessedData, but can't pass it into Main program.
What is the simplest way to pass result of calculations from WhatPressed function into Main one?
I know the way how to do this, using GUI with main window and processing of its handle structure and I use it for control of many operations, but in this case I need only to pass a few parameters from WhatPressed function into Main one?
Thanks for constructive ideas
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 20 Jan. 2018
7 Kommentare
Walter Roberson
am 20 Jan. 2018
If WhatPressed is being closed then you do not need uiresume() as uiwait() will detect that the figure closed. uiwait() / uiresume() could be used in a loop in the main function for the GUI to communicate some information back to the main routine without exiting -- uiresume() can be used to signal "There is data ready for you" without needing to close the figure doing the data collection. But if you are closing the figure anyhow then you do not need to bother to uiresume()
If you have a figure used for data interaction that is going to be used multiple times and should not be available in-between, then instead of creating the interaction figure each time, you can arrange to have it uiresume() and then set itself invisible; when you need it again, set its visibility on and uiwait() on it.
Weitere Antworten (1)
Valeriy
am 21 Jan. 2018
1 Kommentar
Walter Roberson
am 21 Jan. 2018
Easier to assign 0 to curfig to isolate the effects. Or use a more meaningful variable name.
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!