matlab中的uigetfile函数和setappdata函数

来源:互联网 发布:java病毒代码 编辑:程序博客网 时间:2024/05/21 04:17

uigetfile函数

作用:打开文件选择对话框

常用格式:[Filename,Pathname]=uigetfile(FilterSpec)

                  Filename 即返回选择的文件名(如选择了D:\1.jpg)则Filename='1.jpg'

                  Pathname即返回路径,(如选择了D:\1.jpg)则Pathname='D:\'

                  FilterSpec 预设要选择的范围(可以是文件类型的范围也可以是文件所在位置的范围),它可以是一个字符串也可以是一个元胞(cell)用*作为通配符

                  1.若是一个字符串 (一个文件夹的地址),则打开显示的地方就是这个文件夹,可选择的文件类型是matlab默认的文件类型

                  2.若是一个字符串(一个文件的地址),则打开这个文件所在的文件夹,文件类型为这个文件的类型

                  3.若是一个字符元胞数组,这个元胞数组可以是两列(形如{'*.mat;*.m;*.fig','Matlab Files(*.mat,*.m,*.fig )';'*.jpg;*.png;*.bmp','Image Files(*.jpg,*.png,*.bmp)'})

当然这个元胞数组也可以是一列(形如{'*.mat;*.m;*.fig'})(注意逗号和分号的使用)
4.当FilterSpec为空时,matlab用默认的文件类型
5.若在选择文件的时候取消Filename=0,Pathname=0
既然FilterSpec为空也能打开文件那为什么还要提前预设FilterSpec,当然要是你自己编程自己用,自然知道自己需要打开的文件类型,但要是编给别人使用,别人此时就很
懵逼了,所以这里起到提醒作用,也可以防止自己编程时间久后提醒,还有有些文件类型matlab默认类型里是没有的比如图像类型(*.jpg,*.png等)
例子:
setappdata
作用:用该函数去在ui中存储需要的数据,同时用该函数可以在代码的任何地方恢复事先存储的数据(有点像全局变量)
它提供了一个方便的方法来实现相同ui中不同回调函数,不同ui之间回调函数之间的数据共享
格式:setappdata(obj,name,val)
obj即一个图形对象
val需要存储的数据
name自己命名的标识符用来存储val
恢复:Name=setappdata(obj,name)注意obj要是同一个
这样就将val传递给Name了

原创粉丝点击