Выберите элементы из другого списка форм, когда открыто модальное окно - PullRequest
0 голосов
/ 27 апреля 2011

У меня проблема, и это немного сложно объяснить, но я пытаюсь.

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

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

У меня получилось, что оно всплывает и заполняет данные, также я могу выбирать элементы, нажимая стрелки и вводя ключи.

Проблема в том, что я не могу нажать на элемент, как в главной форме, потому что модальное окно не позволяет мне сделать это.

Есть ли способ нажать на элемент в этом всплывающем диалоговом окне, покадругой модальный диалог открыт?Как держать обе формы активными в одно и то же время?

Надеюсь, вы понимаете мой вопрос.

С уважением, evilone

1 Ответ

1 голос
/ 27 апреля 2011

Используйте функцию EnableWindow . Вы можете вызвать его в обработчике события OnShow, например:

// show Form3 and call modal dialog Form2
procedure TForm1.Button1Click(Sender: TObject);
begin
  Form3.Show;
  Form2.ShowModal;
end;

// make Form3 controls available while Form2 is modal:
procedure TForm2.FormShow(Sender: TObject);
begin
  EnableWindow(Form3.Handle, True);
end;
...