⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 contact_name_callback.m

📁 matlab7.0从入门到精通(光盘内容)
💻 M
字号:
function varargout = Contact_Name_Callback(h, eventdata, handles, varargin)
%在Contact Name和Phone编辑框众获取字符串
Current_Name = get(handles.Contact_Name,'string');
Current_Phone = get(handles.Contact_Phone,'string');
%如果为空则返回
if isempty(Current_Name)
    return
end
%从句柄结构体中获取当前地址列表
Addresses = handles.Addresses;
%搜索姓名列表,判断是否与一个已有姓名相同
for i = 1:length(Addresses)
    if strcmp(Addresses(i).Name,Current_Name)
        set(handles.Contact_Name,'string',Addresses(i).Name)
        set(handles.Contact_Phone,'string',Addresses(i).Phone)
        handles.Index = i;
        guidata(h,handles)
        return
    end
end
%如果是个新的姓名,请求创建一个新的条目
Answer=questdlg('Do you want to create a new entry?', ...
    'Create New Entry', ...
    'Yes','Cancel','Yes');			
switch Answer
case 'Yes'
    Addresses(end+1).Name = Current_Name; % Grow array by 1
    Addresses(end).Phone = Current_Phone; 
    index = length(Addresses);
    handles.Addresses = Addresses;
    handles.Index = index;
    guidata(h,handles)
    return			
case 'Cancel'
    %恢复为初始数值
    set(handles.Contact_Name,'string',Addresses(handles.Index).Name)
    set(handles.Contact_Phone,'String',Addresses(handles.Index).Phone)
    return
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -