首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > VFP >

,关于表单的有关问题

2012-04-20 
请教高手,关于表单的问题我设置表单属性windowstate2,showwindow2.但实际运行中表单只显示一部分,并没最

请教高手,关于表单的问题
我设置表单属性windowstate=2,showwindow=2.但实际运行中表单只显示一部分,并没最大化。请教高手,要实现表单置为最大,编译后运行充满整屏,但不覆盖windows任务栏,就怎样做?

[解决办法]
参照这个示例
http://bbs.bccn.net/thread-362146-1-1.html
[解决办法]
干脆注释掉 windowstate=2 这句,自己在 Init 中调整窗口大小至满屏,参考下列代码试试:
窗口类定义中添加下面两个方法:

C# code
  *-- vfp9 代码  Procedure Init    Local nAdj_w, nAdj_h    nAdj_w = 0    nAdj_h = 0    Thisform.GetTaskBarSize(@ nAdj_w, @ nAdj_h)    Thisform.Move(0, 0, ;      Sysmetric(1) - 2*Sysmetric(3) - nAdj_w, ;      Sysmetric(2) - 2*Sysmetric(4) - Sysmetric(9) - nAdj_h)  Endproc  Procedure GetTaskBarSize    Lparameters tnAdj_w, tnAdj_h    Local cBuff, nPos    Declare Long SHAppBarMessage In shell32 Long, String @    cBuff = Replicate(Chr(0), 32)    cBuff = BinToC(4+Len(cBuff), 'rs') + cBuff    SHAppBarMessage(5, @ cBuff)    nPos = CToBin(Substr(cBuff,13,4),  'rs')    Do Case    Case Inlist(nPos, 1, 3)      tnAdj_h = CToBin(Substr(cBuff,29,4),'rs') - CToBin(Substr(cBuff,21,4),'rs')    Case Inlist(nPos, 0, 2)      tnAdj_w = CToBin(Substr(cBuff,25,4),'rs') - CToBin(Substr(cBuff,17,4),'rs')    Otherwise    Endcase  Endproc 

热点排行