关于对话框一些蛋疼的问题,望大神指点,谢谢
时间:10-02
整理:3721RD
点击:
labview中的系统对话框,用的非常多,但是众所周知,对话框打开时,而且底层程序框图会卡在对话框函数这里。
我现在想实现的功能是,
①程序中如果需要发出对话框的地方,则显示对话框,并且底层函数不会卡在对话框这里,还能继续运行。
②如果在一个对话框显示的时候,系统需要弹出第二个对话框,则新对话框覆盖原对话框,出现在最表层。
为了解决①,我把对话框的信息放在另一个while(称为"A循环")里显示,这样原程序段照常运行,不过程序还是卡在了那个显示对话框的"A循环"里了。所以其他地方产生的对话框需求,无法在这个"A循环"里得到执行,而且不可能设计很多很多的while来满足这个需求,因此无法解决②。
请大神指教。
我自己尝试过做自定义对话框,要使程序不卡在对话框那里,除了放在另一个线程里之外,还可以采用VI引用->run VI的方式,但是这种方式又无法显示多个窗口(打开了一个,无法再次打开,设置了“重入”属性也没用,重入属性只对普通子VI调用方式有效)
我现在想实现的功能是,
①程序中如果需要发出对话框的地方,则显示对话框,并且底层函数不会卡在对话框这里,还能继续运行。
②如果在一个对话框显示的时候,系统需要弹出第二个对话框,则新对话框覆盖原对话框,出现在最表层。
为了解决①,我把对话框的信息放在另一个while(称为"A循环")里显示,这样原程序段照常运行,不过程序还是卡在了那个显示对话框的"A循环"里了。所以其他地方产生的对话框需求,无法在这个"A循环"里得到执行,而且不可能设计很多很多的while来满足这个需求,因此无法解决②。
请大神指教。
我自己尝试过做自定义对话框,要使程序不卡在对话框那里,除了放在另一个线程里之外,还可以采用VI引用->run VI的方式,但是这种方式又无法显示多个窗口(打开了一个,无法再次打开,设置了“重入”属性也没用,重入属性只对普通子VI调用方式有效)
已解决,异步调用可以搞定。