Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.23;
Скачать: CL | DM;

Вниз

Подскажите, пожалуйста, про диалоговое окно   Найти похожие ветки 

 
kreyl   (2005-09-30 18:45) [0]

Borland Delphi 2005
Есть простой проект VCL forms Application-Win32. В проекте, собственно, есть главная форма (form1). На форме - кнопка, по нажатию на которую должна вывестись вспомогательная форма (form2), в каковой получаются данные от пользователя. По нажатию кнопки ОК на второй форме оная должна закрыться, а введенные данные должны быть переданы в первую форму.

То есть, классический диалог.

В книжке "Delphi8 для .NET" это описано вполне подробно, однако пример не работает для не .NET. Там написано, в частности, в процедуре кнопки вызова второй формы:
var
 dr: System.Windows.Forms.DialogResult;
begin
 InputBox:= WinForm2.TwinForm.Create; // у меня тут потребовалось .Create(Application)
 dr:=InputBox.ShowDialog(); // Это, как пишут, должно выводить окно как диалог. Однако метода ShowDialog у меня, видимо, нет.
 if (dr=System.Windows.Forms.DialogResult.OK) then
   // тут, собственно, обработка данных.


 
SMATMP ©   (2005-09-30 19:38) [1]

Может быть я не понимаю сути вопроса...
Чем не устраивают Form.Show и Form.Hide?

Скажем на Form1 есть Button1, а на Form2 - тоже Button1. По умолчанию Form2.Visible должна быть установлена в False (второй формы не видно). При нажатии на Button1 формы Form1 (TForm1.Button1Click) происходит Form2.Show. При нажатии же на Button1 формы Form2 (TForm2.Button1Click) происходит множество присвоений пользовательских значений и в конце - Form2.Hide. И все. Предварительно, правда, необходимо зарегестрировать Form2 в Form1 (после implementation, скажем):
...

implementation

uses Unit2;

{$R *.DFM}

...

Предполагается, что Form2 описывает модуль с именем Unit2. Возможно и другое - в этом случае необходимо откорректировать прогу.
Всех благ.


 
Anatoly Podgoretsky ©   (2005-09-30 19:48) [2]

ShowModal


 
AlexWlad ©   (2005-09-30 19:51) [3]

Если пишешь Win32 приложение - зачем пользовать .Netные фишки.

if (InputBox.ShowModal=mrOK) then ...

и все дела...


 
kreyl   (2005-09-30 20:09) [4]

Большое спасибо! Всё очень кстати.



Страницы: 1 вся ветка

Текущий архив: 2005.10.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
14-1128013321
Kolan
2005-09-29 21:02
2005.10.23
Кто смотрел 9 роту.


2-1127593247
Сергей Р.
2005-09-25 00:20
2005.10.23
Вопрос про перетаскивание Timage


1-1128270415
sam07
2005-10-02 20:26
2005.10.23
Общие вопросы


2-1128188325
DroNIX
2005-10-01 21:38
2005.10.23
С++ TO DELPHI (PASCAL)


3-1126680925
erika
2005-09-14 10:55
2005.10.23
Обработка матрицы (матрица представлена в виде расчетной View)