Главная страница
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.034 c
14-1094377822
Baron
2004-09-05 13:50
2004.09.26
Кто играл на деньги


14-1094229984
YurikGL
2004-09-03 20:46
2004.09.26
Две сетевых карты


11-1080626196
Новичёк
2004-03-30 09:56
2004.09.26
Написание сервиса NT с помощью KOL.


8-1088683121
S@shka
2004-07-01 15:58
2004.09.26
Возможно ли сохранить звуковую информацию?


4-1092820204
slavan
2004-08-18 13:10
2004.09.26
Буфер обмена и Делфи