MATLAB: Difference Between ValueChangedFcn & ValueChangingFcn

valuechangedfcnvaluechangingfcn

Hi all
I have a GUI which includes:-
Edit Field Text
Edit Field Text
Text Area
For Edit Field Text & Edit Field Text i have the option to create two callbacks which are:-
1) Add ValueChangedFcn
2) Add ValueChangingFcn
Can anyone explain what the difference is between these two?
Also on the Text Area i can only create one call back which is:-
1) Add ValueChangedFcn
Why isnt there an option for Add ValueChangingFcn for Text Area?
I know i'm being a little thick but Matlab isnt a strong area for me.
Thank you

Best Answer

If you read the documentation carefully, you will notice a subtle difference. This difference is more easily explained with a uislider object as an example.
The ValueChangedFcn executes when the user finishes interacting with the object, which means it only triggers when the user releases the nob in the slider, not on every movement. This makes it similar to a Callback property outside of App Designer.
The ValueChangingFcn executes during the user interaction, so it responds to a single key stroke or slider drag. This means you can separate small live changes from full processing when a slider is released or a text has been completed.
Because the second function is triggered often, you will have to make sure that it is very fast.