![]() |
求教关于GUI中子窗体调用主窗体参数的问题
我已经利用setappdata和getappdata将子窗体A中的一个参数m返回给了主窗体的n,主窗体可以正常使用n,我想问的是我的这个主窗体还包含一个子窗体B,那么我的子窗体B如何调用主窗体中的参数n呢?或者是子窗体A中的m呢?
我的问题有两个: 1、如何使子窗体B调用主窗体参数 2、如何使子窗体B直接调用子窗体A的参数 小弟现在只会主窗体调用子窗体参数,以上这两个不会,请尽量讲的详细点,最好举例说明,我是菜鸟啊 最好是不用重新运行被调用参数所属窗体的办法 |
回复: 求教关于GUI中子窗体调用主窗体参数的问题
都没人,我已经会了,分享下
哈哈,我今天早上又上网找了找,终于找到方法,可以不打开别的窗体实现参数传递,还是利用setappdata和getappdata来实现的,我给你说下啊 先说下这个小实验的功能,在主窗体下,有两个子窗A和B,在A中有一个edit和pushbutton用来传递需要被传递的值,然后在B中也有一个edit和pushbutton用来显示被传递的值。 实现过程: 1、在主窗体中编写代码,有两个菜单按钮,分别链接子窗A和子窗B; 2、在需要把数据传递出去的窗体即子窗A的pushbutton的callback中编写代码: txt=get(handles.edit,'string'); %将edit的值赋给txt setappdata(0,'out',txt); %利用setappdata将txt的数据赋给变量out,这条语句中参数0的位置本应是被传递参数所属窗体的句柄,这里替换成0,意思就是直接把数据保存在matlab工作区间,使out具有全局变量的作用,当然比全局变量好 3、在需要接收传递值的窗体即子窗B的pushbutton的callback中编写代码: in=getappdata(0,'out'); %利用getappdata将工作区间中的out的值赋给in set(handles.edit,'string',in); %将in的值显示在edit中 |
所有时间均为北京时间。现在的时间是 06:38。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.