当前位置: 代码迷 >> PB >> 在mdi窗口中开打就居中显示的有关问题
  详细解决方案

在mdi窗口中开打就居中显示的有关问题

热度:139   发布时间:2016-04-29 10:28:26.0
在mdi窗口中开打就居中显示的问题
请看以下代码,w_main是mdi类型主窗口,w_erp_map是子窗口,

opensheet(w_erp_map,w_main,2,original!) 打开窗口后,

w_erp_map.move((w_main.mdi_1.width - w_erp_map.width) / 2, (w_main.mdi_1.height - w_erp_map.height) / 2)

这句代码可以实现子窗口在mdi中居中显示。现在我想在opensheet子窗口时就居中显示,可是我在open,resize事件中move都不能实现,怎么办啊?

请各位指教一下,谢谢。


------解决方案--------------------
我试过了,将 w_erp_map 的类型设置为 popup!
并在其open事件里写上述move()代码是可行的.

------解决方案--------------------
虽然语法格式上 PostEvent ()与 TriggerEvent ()相同 但 PostEvent ()函数只是邮寄一个 
事件 要求 PowerBuilder 在以后的某个时间执行邮寄事件的事件处理程序 具体时间由PowerBuilder决定 之后当前程序继续执行
TriggerEvent ()通常用做同步调用 因为它等待被调用者执行完毕后才继续运行 而 
PostEvent ()通常用做异步调用 它在发出请求执行信号后就继续运行自己的程序段了
如果 TriggerEvent()或PostEvent()函数位于事件处理程序的最后一行 且没有发生其他 
事件时 两者的效果相同
  相关解决方案