发布于 2006-11-23 14:01:44
0楼
两种思想方法:
1,一个画面窗口用于显示所有的画面(单层式显示),用C脚本把画面窗口连接的属性动态地改变,如:
SetPropChar(lpszPictureName,"画面窗口1","PictureName","烧结1.PDL");;
SetPropChar(lpszPictureName,"画面窗口2","PictureName","烧结2.PDL");;
SetPropChar(lpszPictureName,"画面窗口3","PictureName","烧结3.PDL");;
2,每一个画面对用一个窗口(多层式显示)——原理:其实在wincc运行状态下所有画面窗口的显示属性都是TRUE的状态,只是我们看的当前画面是处在所有画面之上,当点击到某个画面的相应显示按钮的时候就把相应的画面调到最所有画面的前面来就是了。
直接连接不行就考虑用C脚本实现呀!
C脚本实现的两种手段:
1,把一个BOOL型的wincc内部变量连到“画面窗口”的“显示”属性的“动态”中,再在按钮的鼠标点击动作事件中用C脚本:SetTagBit("A1",1);把内部变量A1设置为TRUE(显示)或FALSE(不显示)。
2,用C脚本函数直接设置“画面窗口”的“显示”属性,如:SetPropBOOL(lpszPictureName,"画面窗口3","Visible",1);
如果wincc连这个最基本的画面切换功能都不能很好的实现的话,那么第三次世界大战已经爆发了。
雄关漫道真如铁,而今迈步从头越!