1

看起来很奇怪,我没有使用滑块通过滑动来查看轴上的图像/图形。下面显示的代码是我的 m 文件的一部分。

function slider2_Callback(hObject, eventdata, handles)
% hObject    handle to slider2 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
fname = getappdata(0, 'fname');
[a, map] = imread(fname);
x = ind2rgb(a, map);
b = get(handles.slider2,'value');
j = imadjust(x,[],[],b);
    axes(handles.axes1);
    imshow(j);

b在上面的代码中是一个变量。我滑动滑块的那一刻图像亮度会发生变化,但起初当我运行代码滑块时,滑块的初始点将位于最左侧。但是对于上面的代码滑块应该在中心,如下所示

最初的

但是当我运行我的代码时我期待这个

如何为该滑块设置值(增加/减少亮度)?我该怎么做?

4

2 回答 2

0

您可以使用例如:

set(handles.slider2,'value',50)

这允许您设置滑块的值(并使其等于 50)。您还可以在创建滑块时指定滑块的值,如果我没记错的话,请使用属性检查器。

但是上一行代码在执行时并没有触发滑块的回调。

于 2013-07-31T07:19:25.047 回答
0

如果您使用 GUIDE:您可以在 OpeningFcn 中设置值

如果您不使用 GUIDE:您可以在创建滑块时设置该值

假设,您的滑块的名称(或标签)是“slider1”:

mean_slider = get(handles.slider1,'Max')/2;
set(handles.slider1, 'Value', mean_slider )
于 2013-07-31T07:23:11.537 回答