当前位置: 代码迷 >> PB >> opensheet的疑点
  详细解决方案

opensheet的疑点

热度:95   发布时间:2016-04-29 06:26:31.0
opensheet的疑问
Opensheet下面的两种方式有什么不一样?

1.

Opensheet(w_sheet1,"w_sheet1",w_main)


2.

window lw_win
Opensheet(lw_win,"w_sheet1",w_main)


两种方式作用都一样,有没人知道这两种方式有什么区别吗? 例如:效率,速度,性能?
------解决方案--------------------
第一种实例化了 w_sheet1
在程序中按这种方法打开了w_sheet1后,在需要使用 w_sheet1时,可以直接使用 w_sheet1.函数或事件或变量

第二种将窗口对象w_sheet1打开为MDI窗口实例并将引用存储在lw_win中
在程序中按这种方法打开了w_sheet1后,在需要使用 w_sheet1时,不可以直接使用 w_sheet1. 的方式,因为此时w_sheet1并不以类名w_sheet1存在,此时必须通过GetActiveSheet和GetNextSheet来遍历所有mdi子窗口,再判断mdi子窗口的classname() = 'w_sheet1',才能确认w_sheet1是否被打开
------解决方案--------------------
1、Opensheet(w_sheet1,"w_sheet1",w_main)
之后 isvalid(w_sheet1)为true
对于每一个sheet窗口,只能使用一次这种方式的打开方法
Opensheet(w_sheet1,"w_sheet1",w_main)
Opensheet(w_sheet1,"w_sheet1",w_main)
//使用两次也只能打开一次窗口



2、window lw_win
Opensheet(lw_win,"w_sheet1",w_main)
之后 isvalid(w_sheet1)为false
使用这种方法,每个sheet窗口可以打开无限次
window lw_win, lw_win1
Opensheet(lw_win,"w_sheet1",w_main)
Opensheet(lw_win1,"w_sheet1",w_main)
//可以打开两个窗口