zl程序教程

您现在的位置是:首页 >  其他

当前栏目

matlab简易画板

2023-03-14 10:27:05 时间
function varargout = example6_3_3(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @example6_3_3_OpeningFcn, ...
                   'gui_OutputFcn',  @example6_3_3_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

function example6_3_3_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;

setappdata(hObject, 'isPressed', false);
cData = imread('loading.jpg');
image(cData);
set(handles.axes1, 'colororder', [0 0 1], 'units', 'normalized', 'position', [0 0 1 1])

guidata(hObject, handles);

function varargout = example6_3_3_OutputFcn(hObject, eventdata, handles) 
varargout{1} = handles.output;

function figure1_WindowButtonDownFcn(hObject, eventdata, handles)
if strcmp(get(gcf,'selectiontype'),'alt')
    delete(findobj('type', 'line', 'parent', handles.axes1));
elseif strcmp(get(gcf,'selectiontype'),'open')
    col=uisetcolor(get(handles.axes1,'colororder'),'选择画笔颜色');
    set(handles.axes1,'colororder',col)
else
    pos=get(handles.axes1,'currentpoint');
    setappdata(hObject, 'isPressed', true);
    set(hObject, 'UserData', pos(1,[1,2]));
end

function figure1_WindowButtonMotionFcn(hObject, eventdata, handles)
isPressed = getappdata(hObject, 'isPressed');
pos = get(handles.axes1, 'currentpoint');
if isPressed 
    pos1 = get(hObject, 'UserData');
    line([pos1(1); pos(1, 1)],[pos1(2); pos(1, 2)], 'linewidth', 4);
    set(hObject, 'UserData', pos(1,[1,2]));
end

function figure1_WindowButtonUpFcn(hObject, eventdata, handles)
setappdata(hObject, 'isPressed', false);


书上的代码,贴出来学习下。(画上的话是豪仔刚跟我说的,广东人常这么说咩?哈哈)