为什么在mdi 打开窗口老是居中不了

dzyjl 2011-03-15 09:49:40
我建了一个菜单,然后再菜单里面用 OpenSheet(w_del_note_balance, w_main, 6,Original! )
我在w_del_note_balance open里调用了一个函数f_wincenter(this),可是不知道怎么的老是居中显示不了,发现下面隐藏了好多,要往上托起来,w_del_note_balance 我设置成main response 好像都是不行的,怎么才能在mdi里面居中,


f_wincenter

integer li_ScrennH,li_ScreenW
Environment le_Env
GetEnvironment(le_Env)
li_ScrennH=PixelsToUnits(le_Env.ScreenHeight,YPixelsToUnits!)
li_ScreenW=PixelsToUnits(le_Env.ScreenWidth,XPixelsToUnits!)
win.Y=(li_ScrennH - win.Height)/2
win.X=(li_ScreenW - win.Width) /2
...全文
80 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jldzy 2011-03-16
  • 打赏
  • 举报
回复
谢谢2为楼上的帮忙!!!
liubocy 2011-03-15
  • 打赏
  • 举报
回复

Long ll_x, ll_y, ll_width, ll_height

if isvalid(w_mdi) then
ll_width = w_mdi.mdi_1.width
ll_height = w_mdi.mdi_1.height
end if
ll_x = (ll_width - This.Width) / 2
ll_y = (ll_height - This.Height) / 2
win.Move(ll_x , ll_y)
yyoinge 2011-03-15
  • 打赏
  • 举报
回复
mdi子窗口的居中函数应该这么写
if isvalid(w_mdi) then //w_mdi是指MDI父窗口,需要换成你的
win.x = max(0 ,(w_mdi.width - win.width) / 2)
win.y = max(0, (w_mdi.mdi_1.height - win.height) / 2)
end if

1,108

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧