为什么MDI模式下,窗体创建后总是出向在同一位置? ( 积分: 100 )

  • 主题发起人 主题发起人 zhouyujie238
  • 开始时间 开始时间
Z

zhouyujie238

Unregistered / Unconfirmed
GUEST, unregistred user!
MDI子窗体是从dll里面创建出来的,formstyle选fsMDIChild,windowsstate选wsNormal,允许的时候,这些窗体总是出现在相同的位置,打开多了都堆在一起,让人很郁闷。有没有办法让这些窗体打开是,自动错开一点点?
 
把windowsstate这个属性设置成wsMaximized 这样就可以覆盖 其他的 要是不想覆盖其他的 可以设置窗体的 位置 应该是left和top设置
 
Application的对象不对.主程序和DLL的Application不是同一个内容导致的.你可以保护DLL的Application对象指针,然后用主程序的Application给DLL.大概是这样的.你先试试吧.
 
在formcreate事件中手工处理一下吧
 
你可以这样声明两个全局变量。<br>如:<br>top=100,left=100<br>每次创建一个窗体,那么就把inc(top,-2),inc(left,-2)。这两个值赋给新的窗体的top和left<br>一样可以解决
 
自己找到原因了,子窗体的属性Position要设置为poDefault,系统默认的是poMainFormCenter。
 

Similar threads

D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
I
回复
0
查看
555
import
I
后退
顶部