如何在程序中同时弹出多个子VI的界面,各自运行互不影响

回答网友一个问题:“我设计了一个labview界面子VI,我想在主VI中多次调用该界面VI(同时执行,单独分配内存),并显示出多窗口,该如何设置?我尝试将子VI属性设置成可重入,仍无法解决。”

这个问题其实挺常见的。若需要子VI打开多份实例,子VI必须是可重入的。所以第一步要把子VI设置为可重入。但仅仅这样还不够,主程序运行到子VI处,把子VI打开后,会一直等在这里,知道子VI运行结束,才继续执行主VI后续的代码。主VI既然已经停在这里了,自然不会再继续去打开其它子VI。解决的办法是在调用子VI的地方,改为动态调用,并且不等待子VI运行结束。这样一来,主程序运行到这里,将子VI调起后,立即执行后续代码,又可以去调用其它的子VI了。

需要注意的是,用于子VI是可重入的,需要给“Open VI Reference”函数设置一个值为“8”的Options参数。主VI程序代码如下:

Advertisements

8 thoughts on “如何在程序中同时弹出多个子VI的界面,各自运行互不影响

  1. 写作背景: 1、 吃过高中学习生涯的家常便饭——连续半个月的卖命补课,在补课过程中有 12 位新同学的加入,改变了我以往对同学学习态度的看法。 2、 经过一学期的努力,以前只会说 ladies and gentlemen 的我,这次期末考试成绩名列前茅。在这个过程中和英语老师结下深厚的友谊。 3、 连续写了三次关于电源的解决方案,却被老师们砍得死去活来,好不快活啊!体会到做初期的技术开发是非常困难的。 4、 和一位 20 出头的钻井小弟畅谈他的职业生涯,惊奇发现在不同行业中也有不平凡的拼搏与坚持。 虽然我不是大名鼎鼎的文学大师,也不是语文成绩顶尖的学生,但有感而发动一动笔杆子,说不定会奇迹出现,此文献给所有正在为自己的目标而奋斗的人,相信它会激励每一个人朝着明确的方向前进。 用真诚和务实发挥影响力,经过半年的寒窗苦读之后,发现周围的环境开始和自己变得融洽起来,虽然我不敢肯定所有人都愿意培养自己的专研精神,但至少在懂事的人群中,相信他们愿意和我分享在技术上每一步的成功和失败。因为我的科任老师被我的举动所感动,决定尽力地帮助我实现在高中阶段的目标,尽管他们只能够在他们所教授的课程上尽力帮助我解决在课堂上遇到的问题,而我觉得这样已经足够了,因为我可以把课堂上的知识和那种研究的氛围带到我课外喜欢做的事情上,并且有信心把它做得更好! 一个人跳舞,这是一种什么样的感觉?我想只有这样的经历才会以一种无以言表的语言给它勾画出最美的舞姿。 以前我仅在电视中看到许多人为了自己的事业和学业常常孤身一人站在舞台上跳舞。我原以为那些虚构的剧情和人物不会发生在我的身上,想不到它却悄悄地走进了我生活的每一个角落,当周围的万家灯火都熄灭入睡的时候,自己一个人还伏在实验台和课桌上忙着学习,然而我并不因为这种一个人跳舞的感觉而感到任何的不适,我觉得做任何一件事都要经历这样一个过程,尤其是正在经历这样一个过程的人,千万不要降低对自己的要求,如果放弃了,在未来的时间你会偶然发现,其实成功离我们很近,如果在那个时候我只要不放弃,我就可以实现自己的价值了。同样,这种一个人跳舞的感觉在很大程度上考验着我们的毅力和恒心,也加深了我对我未来的职业理解,为什么呢? 我们每个人都知道,当你把你的兴趣和爱好融入到学习、工作任何一个角落的时候,并且当你第一次想用自己的兴趣额和爱好的实现您的价值时候,你却感到无比的茫然。举一个典型的例子:做初期的技术开发是非常困难的,无论从商业、学习以及个人的主观角度的理解来说,这是一个既新鲜又好玩的东西,但也充满风险和挑战,而如今我却面临这样一个十字路口,但我选择的是追随自己的兴趣和爱好,继续做自己喜欢的技术开发,对于我来说,在这个过程中的点点滴滴都值得我在将来的时间中回味… 当你一个人跳舞快跳完的时候,你就会倍加珍惜你所在的团队,而你的团队将会和你一起跳舞,而这种舞就是人们最愿意跳的舞——快乐!

  2. 恩,谢谢,我今天中午自己把这方法给凑了出来,我之前是把前面板显示放在运行之前,所以会闪,呵呵

  3. 打开VI引用时,不要显示子VI(子VI不要设置为运行时显示)。动态调用时子VI运行后,再使用VI 的 Panel Open 方法显示其前面板。

  4. 阮大侠,你好,我现在也是用这种方法调用子vi的,我做的界面都是最大化设置,并且只有标题栏,但是每次子vi界面弹出来的时候,都会闪一下,我想请教下,有没有什么方法让界面在弹出来时不要闪,或者不要闪的太明显?谢谢!!!

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s