• 大小: 9KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-12
  • 语言: Matlab
  • 标签: MATLAB  gui  密码输入  

资源简介

多用于MATLAB设计GUI时候需要密码输入验证界面的功能,是学习GUI设计的一个好例子

资源截图

代码片段和文件信息

function varargout = a2(varargin)
gui_Singleton = 1;
gui_State = struct(‘gui_Name‘       mfilename ...
                   ‘gui_Singleton‘  gui_Singleton ...
                   ‘gui_OpeningFcn‘ @a2_OpeningFcn ...
                   ‘gui_OutputFcn‘  @a2_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 a2_OpeningFcn(hobject eventdata handles varargin)
handles.output = hobject;
javaframe = get(hobject ‘Javaframe‘);
javaframe.setFigureIcon(javax.swing.ImageIcon(‘icon.jpg‘));
[num txt raw] = xlsread(‘user_information.xls‘);
if ~iscellstr(raw)
    for i = 1 : numel(raw)
        n(i) = isnumeric(raw{i});
    end
    raw{n} = num2str(raw{n});
end
handles.user = raw(2 : end 1)‘;
handles.code = raw(2 : end 2)‘;

guidata(hobject handles);

function varargout = a2_OutputFcn(hobject eventdata handles) 
varargout{1} = handles.output;

function login_user_Callback(hobject eventdata handles)

function login_user_CreateFcn(hobject eventdata handles)
if ispc
    set(hobject ‘BackgroundColor‘ ‘white‘);
else
    set(hobject ‘BackgroundColor‘ get(0 ‘defaultUicontrolBackgroundColor‘));
end

function log_Callback(hobject eventdata handles)
user = get(handles.login_user ‘string‘);
code =get(gcf‘userdata‘);
users = handles.user;
codes = handles.code;
n = find(strcmp(users {user}));
if length(n) && isequal(codes{n} code)
    h = msgbox(‘登陆成功!‘);
    uiwait(h);
    delete(gcf);
    figure(1)
    set(1 ‘name‘ ‘系统界面‘);
else
    errordlg(‘用户名或密码错误!‘ ‘错误提示‘);
    set(handles.login_code ‘string‘ ‘‘)
    set(hobject ‘userdata‘ ‘‘)
end

function log_KeyPressFcn(hobject eventdata handles)
if double(get(gcf ‘Currentcharacter‘)) == 13
    user = get(handles.login_user‘string‘);
    code = get(gcf ‘userdata‘);
    users = handles.user;
    codes = handles.code;
    n = find(strcmp(users{user}));
    if length(n) && isequal(codes{n} code)
        h = msgbox(‘登陆成功!‘);
        uiwait(h);
        delete(gcf);
        figure(1)
        set(1 ‘name‘ ‘系统界面‘);
    else
        errordlg(‘用户名或密码错误!‘ ‘错误提示‘);
        set(handles.login_code ‘string‘ ‘‘)
        set(hobject ‘userdata‘ ‘‘)
    end
end

function figure1_KeyPressFcn(hobject eventdata handles)
c = get(hobject‘Currentcharacter‘);
if isstrprop(c‘graphic‘)
    set(hobject ‘userdata‘ [get(hobject‘userdata‘) c])
    set(handles.login_code ‘string‘ [get(handles.login_code‘string‘) ‘*‘])
else
    log_KeyPressFcn(hobject eventdata handles);
    val = double(c);
    if ~isempty(val) && val == 8
        str = get(hobject ‘userdata‘);
        if ~isempty(str)
            str(end) = [];
        end
        set(h

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       4097  2010-10-18 19:13  log_in_password\a2.fig

     文件       3363  2010-10-18 19:23  log_in_password\a2.m

     文件       2358  2010-08-21 06:44  log_in_password\icon.jpg

     文件      13824  2010-08-21 06:44  log_in_password\user_information.xls

     目录          0  2012-05-14 13:28  log_in_password

----------- ---------  ---------- -----  ----

                23642                    5


评论

共有 条评论