ActiveForm 中显示模式窗口,当切换为其它应用程序,再切回来后应用程序不能获得焦点,模式窗口到应用程序的后面了,怎么办 Delphi / Windows SDK/APIhttp://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的主窗体就不响应焦点 了