关于MDI的一个问题(50分)

  • 主题发起人 主题发起人 yccai
  • 开始时间 开始时间
Y

yccai

Unregistered / Unconfirmed
GUEST, unregistred user!
各位高手:
如何控制MDI子窗体的显示位置。
(即如何控制MDI子窗体在指定的位置显示)

 
在子窗体的属性里面,你仔细去找找相关的属性....
 
加坐标参数……
 
在Form的Position属性中指定为:poDefaultPosOnly
 
Form的Position属性中可以让用户指定Form显示的位置:屏幕中央,主窗体的中央,设计
期时的位置等等。如果这些属性还不满足你的要求的话,就发一个消息。
 
设置属性就可以了呀
 
如果想让两个随主窗体一起创建的子窗体一上一下没有重叠的放在主窗体的左边,你们会吗?
 
[green]指定Form的Position为:poDefaultPosOnly[/green]
[red]搞定[/red]


 
在Create事件中直接制定Left和Top即可,我就是这么作的。
 
对,在Create事件中指定left和top就可以了
 
听说MS放弃了MDI,那以后还有学这个东西的必要么?
 
当然有必要啊,但是我会逐渐转到SDI的
 
我也碰到过这个问题,
后来将子窗体的Position属性设为poDefaultPosOnly就OK了。
 
将子窗体的Position属性设为poDefaultPosOnly。
 
试试
HostDockSite
DoDock
 
在Create事件中直接制定Left和Top即可。
 
在Create事件中直接制定Left和Top
 
MDI程序中控制子窗体位置,高度和宽度代码:[:D]
LockWindowUpdate(ClientHandle);//加这行
FormXzbb:=TFormXzbb.Create(Self);//FormXzbb为子窗体
FormXzbb.Caption:='报表打印';
FormXzbb.Left:=20;
FormXzbb.Top:=25;
FormXzbb.Width:=375;
FormXzbb.Height:=315;
LockWindowUpdate(0);//加这行
 
API函数CreateWindow是建立窗口的
忘了delphi在那个过程里调用它了,好像是create...什么的,重载它
如果一定要指定位置就在建立窗口时指定
 
后退
顶部