How to automatically update editText box with 'new axes limit' when Zoom tool has changed the axes limit?
I am looking at an example with zoom given in Matlab help:
function demo % Listen to zoom events plot(1:10); h = zoom; set(h,'ActionPostCallback',@mypostcallback); set(h,'Enable','on'); % function mypostcallback(obj,evd) newLim = get(evd.Axes,'XLim'); msgbox(sprintf('The new X-Limits are [%.2f %.2f].',newLim)); ----------------------------------------------
How would I update an existing editText box with the newLim from within mypostcallback()? Or would I have to create an event listener? Then how would I do that?
betty - I don't think that you need an event listener, you just need the means at which to access the handle to the edit text control. From the above example, you haven't indicated how you are using this code or how you have created your GUI, but let's assume that you have done so with GUIDE. Suppose that you have an axes, a (say) checkbox to enable or disable the zoom, and a text box to display the axes limits. Then in the checkbox callback we enable or disable the zoom as
function checkbox1_Callback(hObject, eventdata, handles) if get(hObject,'Value') == 1 if ~isfield(handles,'hZoom') handles.hZoom = zoom; set(handles.hZoom,'ActionPostCallback',@zoomPostCallback); guidata(hObject,handles); end set(handles.hZoom,'Enable','on'); else if isfield(handles,'hZoom') set(handles.hZoom,'Enable','off'); end end
In the zoom post action callback we do
function zoomPostCallback(hObject,event) handles = guidata(hObject); if isfield(handles,'text1') set(handles.text1,'String',num2str(get(handles.axes1,'XLim'))); end
In the above, we use the hObject input parameter to get the handles structure (via guidata) which will have the handle to the text1 control. We update that control using the new limits of axes1. See the attached for a simple example.
Matlabsolutions.com provides guaranteed satisfaction with a
commitment to complete the work within time. Combined with our meticulous work ethics and extensive domain
experience, We are the ideal partner for all your homework/assignment needs. We pledge to provide 24*7 support
to dissolve all your academic doubts. We are composed of 300+ esteemed Matlab and other experts who have been
empanelled after extensive research and quality check.
Matlabsolutions.com provides undivided attention to each Matlab
assignment order with a methodical approach to solution. Our network span is not restricted to US, UK and Australia rather extends to countries like Singapore, Canada and UAE. Our Matlab assignment help services
include Image Processing Assignments, Electrical Engineering Assignments, Matlab homework help, Matlab Research Paper help, Matlab Simulink help. Get your work
done at the best price in industry.