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

Вниз

Процедура открытия модального окна   Найти похожие ветки 

 
user1   (2004-09-09 09:24) [0]

Подскажите, пожалуйста!
Нужно написать процедуру отрытия модальных окон,
используя свойство Tag вызывающего их компонента.
Короче, у меня это выглядит так:

TForm1.Button1Click...
begin
 Form2:=TForm2.Create(Application);
 Form2.ShowModal;
end

TForm1.Button2Click...
begin
 Form3:=TForm3.Create(Application);
 Form3.ShowModal;
end

TForm1.Button3Click...
begin
 Form4:=TForm4.Create(Application);
 Form4.ShowModal;
end

Как видите, текст один и тот же.
Хотелось бы делать это одной процедурой
в зависимости от, скажем, значения свойства Tag кнопки Button,
и присвоить другим кнопкам ее событие OnClick и вызывыть
нужные формы. :

TForm1.Button3Click...
begin
 case (sender as TButton).Tag of
   1: // Спасибо, если укажете правильный путь
   2: // С уважением, :)
 end
end


 
46_55_41_44 ©   (2004-09-09 09:40) [1]

Слушай ты же сам уже ответ написал :)))

TForm1.Button3Click(Sender: TObject);
begin
case (sender as TButton).Tag of
  1: begin
      Form2:=TForm2.Create(Application);
      Form2.ShowModal;
     end;    
  2: begin
      Form3:=TForm3.Create(Application);
      Form3.ShowModal;
     end;    
  3: begin
      Form4:=TForm4.Create(Application);
      Form4.ShowModal;
     end;    
end
end;

просто после всего этого в Object Inspector в OnClick каждой формы указываешь Button3Click... и все!!!


 
46_55_41_44 ©   (2004-09-09 09:40) [2]

Слушай ты же сам уже ответ написал :)))

TForm1.Button3Click(Sender: TObject);
begin
case (sender as TButton).Tag of
  1: begin
      Form2:=TForm2.Create(Application);
      Form2.ShowModal;
     end;    
  2: begin
      Form3:=TForm3.Create(Application);
      Form3.ShowModal;
     end;    
  3: begin
      Form4:=TForm4.Create(Application);
      Form4.ShowModal;
     end;    
end
end;

просто после всего этого в Object Inspector в OnClick каждой кнопки указываешь Button3Click... и все!!!


 
46_55_41_44 ©   (2004-09-09 09:44) [3]

Пардон за дублирование... просто ошибся в первый раз. Вместо слова "формы" надо было написать слово "кнопки"...


 
wal ©   (2004-09-09 10:07) [4]


TForm1.Button3Click(Sender: TObject);
var
 Form: TForm;
begin
case (sender as TButton).Tag of
 1:  Form:=TForm2.Create(Application);
 2:  Form:=TForm3.Create(Application);
 3:  Form:=TForm4.Create(Application);
 else Exit
end;
Form.ShowModal;
Form.Free
end;

Если, конечно, TFormX - наследники TForm.

С уважением.


 
Ega23 ©   (2004-09-09 10:10) [5]

кстати, можно и так:
TForm1.Button3Click...
begin
case (sender as TButton).Tag of
  1: Button1.OnClick(nil);
  2: Button2.OnClick(nil);
end
end



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

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

Наверх




Память: 0.48 MB
Время: 0.046 c
14-1094645941
Aspart
2004-09-08 16:19
2004.09.26
Для чего нужна оперативная память принтеру?


3-1093420001
Алексей
2004-08-25 11:46
2004.09.26
Альтернатива BDE и ADO для FOX и dBASE


1-1094827912
Андрей-КА
2004-09-10 18:51
2004.09.26
Сообщение об открытии папки (С: Temp)


4-1092324892
Ivane
2004-08-12 19:34
2004.09.26
Работа со сканером


1-1094609976
массив
2004-09-08 06:19
2004.09.26
Как грузить в TMemo и TRichEdit файл в Unicode ?