MDI窗口问题(100分)

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

zhceleu

Unregistered / Unconfirmed
GUEST, unregistred user!
MDI窗口中,假如在主窗口上放置Panl,或者edit之类的元件,当子窗口<br>SHOW时,会和子窗口重叠在一起,而且这些原件还在子窗口上面,不知<br>为什么?
 
无法回答问题?
 
mdiform是一类特殊form,client区上放置控件就会出现你所说的问题。你可以看一下<br>已答问题,有很多这方面的。
 
  问题的原因估计是Bug在作怪,也不知道是Delphi还是Windows的问题。<br>  比较简单的解决办法是:<br>  在MDIChild创建或显示时,把主窗口上捣乱的玩意儿Hide掉;当MDIChild释放<br>或隐藏时,再让它们显示出来。做到这一点并不太难,响应相关的事件或信息就成。<br>  更好的方法我还没有发现,看看其它的高手有没有什么高招儿。
 
这可不算是bug吧。
 
不是bug也是技术上的失败。
 
&nbsp;为什么要放一个EDIT呢?<br>&nbsp; 放一个菜单或ToolBar就行了吧!
 
对, 本身mdiform也不支持mainform放乱七八糟的构件:-)
 
mdi就是那样的,也不是技术上的失误。
 
而且现在已经过时,这已经不应成为问题了。
 
难道在主窗口上放置背景图案就不可能了吗?
 
主窗口上放置一panel,在panel上再放置其它控件,然后在调用子窗口时<br>panel.Visible := False;<br>调用结束后<br>panel.Visible := True;<br><br>由于你的子窗口调用过程不会太多因此代码量不会很大<br>
 
放底图不成问题,控件好象不可能。
 
在使用MDI窗囗时,主窗囗中的控件只能放或放在能有Ailgn属性的控件里,<br>并不能设为alNone,因为子窗囗是Form类,而Form是只能放在所有控件之<br>后。控件上右键菜单的Send to Back的那个意思。
 
end or continue?
 
end<br>不过可以给我一点分吗?
 
多人接受答案了。
 
后退
顶部