delphi2007 教程

delphi2007 教程

首页 新随笔 联系 聚合 管理
  1013 Posts :: 0 Stories :: 28 Comments :: 0 Trackbacks
ActiveForm 中显示模式窗口,当切换为其它应用程序,再切回来后应用程序不能获得焦点,模式窗口到应用程序的后面了,怎么办 Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiAPI/html/delphi_20061112180622250.html
ActiveForm   中显示模式窗口,当切换为其它应用程序,再切回来后应用程序不能获得焦点,模式窗口到应用程序的后面了,怎么办

猜测,没有试验,不知道是不是指定了窗体的父窗体,或者owner窗体,是不是可以解决你的问题。

我也遇到这样的问题,一直没办法解决。  
  楼上的方法试过,有问题,指定了那个模式窗口的父窗体之后,这个子窗体不能获得焦点了

好像显示窗体的时候硬性规定显示在最上面;  
  用ShowModal;

可以控制鼠标来点一下这个窗口。

注意你模式窗口的parent属性,如下设置:  
  ActiveForm的某个事件中  
  showForm   :=   TShowForm.Create(self);  
  showForm.parent   :=   self;  
  showForm.ShowModel;  
   
  同理,MessageBox()也是这个道理,如果把handle设为self.Handle,就不会出现这种情况。  
 

楼上的你有没有试过,这根本不行,一执行ShowModal包括OCx的主窗体就不响应焦点   了

posted on 2009-02-03 09:49 delphi2007 阅读(426) 评论(0)  编辑 收藏 引用
只有注册用户登录后才能发表评论。