Clim Change to help slider
Show older comments
hello everyone do not know how slider can change the value Clim [0 b]. The property inspectr axes I have not found the box for the callback.
function varargout = books(varargin)
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @books_OpeningFcn, ...
'gui_OutputFcn', @books_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
function books_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
function varargout = books_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
function slider1_Callback(hObject, eventdata, handles)
set(handles.edit1,'String',...
num2str(get(handles.slider1,'Value')));
I = imread('cameraman.tif');
imshow(I)
function slider1_CreateFcn(hObject, eventdata, handles)
if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor',[.9 .9 .9]);
end
function edit1_Callback(hObject, eventdata, handles)
val=str2double(get(handles.slider1,'Slider'));
if isnumeric(val) & length(val)==1 & ...
val >= get(handles.slider1,'Min') & ...
vas <= get(handles.slider1,'Max')
set(handles.slider1,'Value',val);
else
handles.numberOfErrors = handles.numberOfErrors + 1;
set(handles.edit1,'CLim',...
[handles.errorCLim,num2str(handsles.numberOfErrors)]);
guidata(gcbo, handles);
end
function edit1_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
Accepted Answer
More Answers (4)
Adam
on 1 Mar 2012
Walter Roberson
on 1 Mar 2012
0 votes
Clim needs to be set to a pair of numeric values (an array of 2 elements). When you get() the Value of a slider, you only get one numeric value.
Adam
on 2 Mar 2012
3 Comments
Walter Roberson
on 2 Mar 2012
Change
set(handles.axes,'CLim',[min_val. max_val],...
get(handles.slider1,'Value'));
to
set(handles.axes,'CLim',[min_val max_val]);
Adam
on 2 Mar 2012
Walter Roberson
on 2 Mar 2012
CD = get(handles.I,'CData');
max_val = max(CD(:));
This will work whether the CD is 2 dimensional (indexed image) or 3 dimensional (RGB image). Your previous code would fail on RGB images because max(max()) would only reduce 2 of the 3 dimensions.
Adam
on 2 Mar 2012
0 votes
Categories
Find more on Graphics Object Properties in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!