Appdesigner - slider changed function - missing argument
2 次查看(过去 30 天)
显示 更早的评论
Hello, I am trying to programmatically change the scaling of an imgae on a uifigure by using a slider
fig = uifigure('Name','Montage');
fig.Position = [300 500 1200 400];
g = uigridlayout(fig);
g.RowHeight = {'2x','2x','1x'};
g.ColumnWidth = {'1x'};
ax1 = uiaxes(g);
ax1.Layout.Row = [1 2];
ax1.Layout.Column = 1;
sld1=uislider(g,'ValueChanged',@(sld1,event) updateImage(event,ax1,sld1)); %Need to palso pass ax1 I think
sld1.Layout.Row = [3];
sld1.Layout.Column = 1;
mx=double(max(Image2(:)));
sld1.Limits = [1 mx];
v=min(mx,round(hi));
sld1.Value=double(v)
imshow(Image2,[lo hi],'Parent',ax1);
Where
function results = updateImage(event,ax1,sld1)
value=sld1.Value
ax1.CLim=[0 max(1,value)];
But this leads to the error:
Check for missing argument or incorrect argument data type in call to function 'updateImage'.
Error in PhotonControl>@(sld1,event)updateImage(event,ax1,sld1) (line 2398)
sld1=uislider(g,'ValueChanged',@(sld1,event) updateImage(event,ax1,sld1));
Error using matlab.ui.control.internal.controller.ComponentController/executeUserCallback (line 429)
Error while evaluating Slider PrivateValueChangedFcn.
0 个评论
采纳的回答
Mario Malic
2020-11-17
Hello,
Right click on the Slider component, create a callback - ValueChangedFcn
% Example text, adjust to the actual component names
% Value changed function: CupHeightWeightEditField
function SliderValueChanged(app, event)
value = app.SliderComponent.Value
app.UIAxes.CLim=[0 value];
end
9 个评论
Mario Malic
2020-11-18
Just wanted to share this here, since this is a proper information to learn from regarding your issue. https://www.mathworks.com/help/matlab/creating_guis/creating-multiwindow-apps-in-app-designer.html
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Develop uifigure-Based Apps 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!