Как предотвратить активацию формы, когда пользователи нажимают на нее? - PullRequest
2 голосов
/ 23 марта 2010

У меня есть основная форма и немодальная форма автозаполнения. Как я могу предотвратить активацию формы автозаполнения пользователем, когда пользователь нажимает на список в форме автозаполнения?

Итак, я хочу, чтобы автозаполнение формы получало сообщение о щелчке мышью, когда пользователь щелкает, но никогда не становилось активным, потому что это вызывает проблемы со сторонним компонентом в основной форме, который я не могу контролировать.

Ответы [ 2 ]

6 голосов
/ 23 марта 2010

Переопределите метод CreateParams вашей формы и добавьте стиль WS_EX_NOACTIVATE в расширенные стили.

procedure TForm1.CreateParams(var Params: TCreateParams);
begin
  inherited;

  Params.WindowClass.ExStyle := Params.WindowClass.ExStyle or WS_EX_NOACTIVATE;
end;

(код, написанный из памяти, может содержать опечатки)

0 голосов
/ 23 марта 2010

Используйте CreateParams (ответ Alex T.) или вы можете попробовать установить YourForm.Enabled на False.

...