Rss & SiteMap
搭建论坛 http://bbs.diylsoft.com:8118/starforum/index.asp
我在做的项目是这样的:
由A项目调用B项目(两个项目的窗口都为前置)。在B项目中执行报表预览时,按照admin的建议,先把B项目窗口隐藏再预览,预览完毕再将B项目窗口可见,OK,没问题。
但是,通过主控程序调用A项目,再执行B项目的打印预览时,预览窗口就看不到了,系统出错。。
其实,不论在系统中的任何位置,只要执行“打印预览”, 预览窗口就肯定应该是在屏幕最前面的。因此,再次强烈建议,请修改报表面板构件中的预览方法,将其属性置前!
我做了个例子,请管理员看一下。请通过“主控”进入:
下载信息 [文件大小: 下载次数: ] | |
![]() |
下载信息 [文件大小: 下载次数: ] | |
![]() |
我的项目有一个主控程序,下面有若干个子项目;每个子项目又会调用若干个通用的功能模块(子项目)。
主控程序窗口不是置前的;但每个子项目都必须置前。这是因为,为保证整个系统的连贯性,主控程序一般都是通过追加方式加载运行各个子项目。子项目如果不把窗口置前,则在最小化等操作时,无关窗口会显示出来。
报表预览实际上也是一个窗口。其前置问题如果不处理好,在多个项目追加运行时特别容易出现问题。所以,还请管理员务必解决此问题。
回复一楼:如你所示实例的设置,出现错误是正常的。“窗口前置”顾名思义,就是窗口在屏幕的最前面,它是有唯一性的,其子项目下的“预览”窗口怎么可能再去置前呢?
解决办法:将“子项目”(就你这项目而言)的“窗口置前”属性设为“<假>”。
你担心通过“最小化”按钮,其它窗口就显现出来问题的解决办法是将子项目窗口的“最小化、最大化”按钮屏蔽。
按照管理员的建议,我重新设置了一下。例子见一楼。
在进入子项目后,如果单击任务栏上的项目图标,本来满屏显示的窗口应该是子项目的,现在因为子项目窗口没有置前,变成主控窗口的了。这也是我为什么一直要强调子项目主窗口置前的原因。请教:这样设置以后,打印预览问题是解决了,那么新出现的这个问题该怎么解决?
就针对你的项目而言,从主控项目→子项目时,采用“覆盖执行”。也就是抛弃掉“主控项目”窗口(实际上,你的子项目本质上是主控。)。就解决你的问题了。
那么,如果你需要从子项目→主控项目。解决办法:在“子项目退出”事件中,重新加载“主控”项目即可。
您说的这种办法,我也试过。为什么没采用?主要是因为“覆盖执行”要先关闭主控窗口,再打开子项目窗口,会出现闪屏现象,整个项目感觉不连贯。而“追加执行”就不会存在这样的现象。不知还有没有更好的办法?
最根本的问题还是没有解决:因为想让整个项目很连贯,所以采用了“追加方式”;为了保证子项目窗口和主控窗口在最小化时不混淆,所以设置了子项目窗口的前置;因为子项目窗口前置,导致了打印预览窗口出错;
现在,为了解决问题,一步步的又退回到了原点。困惑我多日的问题还将继续存在着。。
我不明白,把打印预览窗口置于全部窗口的最前面(屏幕最前)有什么不可以??