Listener not responding to ui slider
7 次查看(过去 30 天)
显示 更早的评论
I didn't like how the normal callback implementation on the slider only updated once I stop dragging it, so I tried addlistener instead, but for some reason it just doesn't respond at all. As a simple example, for the following code
sld = uicontrol('Style','slider');
lst = addlistener(sld,'Value','PostSet',@(src,evt)disp('value changed'));
Changing the value of the slider directly from the Command Window ( sld.Value=0.5; ) causes the callback function to run, but moving the slider or pressing the arrows on its ends does nothing.
What am I doing wrong?
4 个评论
Les Beckham
2025-3-20
Ah yes, that could be a difference as well. I'm on Windows 10. I'll report the issue with 2025a. Sorry to not have any more ideas to help you.
回答(1 个)
Image Analyst
2025-3-21
If you use AppDesigner then you can use the "Value changing" event to do an instantaneous/live updating of the displayed value. For example, here is an example from one of my programs:
% Value changing function: sldOpacity
function sldOpacityValueChanging(app, event)
changingValue = event.Value;
tt = sprintf('%.1f %% original and %.1f %% colorized', changingValue, 100-changingValue);
app.lblOpacity.Text = tt; % Change static text label above the slider.
app.lblOpacity.Tooltip = tt;
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Environment and Settings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!