我很难在主要表单上面显示第二个表单而不会失去焦点.
我试过了ShowWindow(second.handle, SW_SHOWNOACTIVATE)
,但主体失去了焦点.如果我Visible := false
在第二个窗口上设置,则调用ShowWindow
不会激活第二个窗体,但显示时窗口为空...
有没有人有这个好的食谱?
更新:我正在尝试做的是,在给定的事件中显示一个通知窗口.主要形式在任何时候都不会失去焦点,这一点至关重要.
您的代码必须有问题.
我测试了这段代码,它有效:
procedure TForm1.Button1Click(Sender: TObject); begin ShowWindow(Form2.Handle, SW_SHOWNOACTIVATE); Form2.Visible := True; end;
小心使用Visible
,不是Show
!否则它会覆盖SW_SHOWNOACTIVATE
.