I found the solution. I needed to set the uieditfield.Value to a different number after I had used the value to change the orientation of my detector. I chose zero as I am unlikely to edit the field with a new value of zero.
Use uieditfield.ValueChangedFcn to change uieditfield.value by same amount
4 次查看(过去 30 天)
显示 更早的评论
I have a gui that contains a uieditfield component. The editfield changes the orientation of a detector by the uieditfield.Value amount. Many times I wish to change the field by increments of 1. For example, I enter a value, say 1 into the edit field box. The next time I want to move the detector by the same amount. When I type in 1 to the uieditfield box, the detector does not move, however, if I type in 1.1 then the detector moves. I believe that this behavior is connected to the uieditfield method ValueChangedFcn. I am using uieditfield.ValueChangedFcn as a callback to move the detector. My question is:
How can I change the orientation of my detector by using constant increments? Should I use a different ui component to get the behavior I need? Is the problem actually in using uieditfield.ValueChangedFcn?
0 个评论
采纳的回答
更多回答(1 个)
Voss
2022-3-11
It sounds like what's going on is that the ValueChangedFcn does not execute when the uieditfield's Value does not change. So you need a way to update the detector orientation when the detector orientation increment is not changing.
You may consider putting an additional component in your UI, say a uibutton whose ButtonPushedFcn increments the orientation of the detector by the amount given in the uieditfield's Value.
3 个评论
Voss
2022-3-11
I think setting uieditfield.Value to zero after getting the new value would work.
But you may want to rethink your code's structure a little bit, because you need a function to update the detector orientation, say updateDetectorOrientation(), that is not tied only to the uieditfield's ValueChangedFcn. I mean, updateDetectorOrientation() can be called from the uieditfield's ValueChangedFcn, but it also needs to be called any time the detector orientation needs to update for any reason.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!