![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Процедура открытия модального окна [D3, WinXP]
user1 © (2004-09-09 09:24:00)Подскажите, пожалуйста!
Нужно написать процедуру отрытия модальных окон,
используя свойство 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
Ega23 (2004-09-09 10:10:00) [1]кстати, можно и так:
TForm1.Button3Click...
begin
case (sender as TButton).Tag of
1: Button1.OnClick(nil);
2: Button2.OnClick(nil);
end
end
wal (2004-09-09 10:07:00) [2]
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.
С уважением.
46_55_41_44 (2004-09-09 09:44:00) [3]Пардон за дублирование... просто ошибся в первый раз. Вместо слова "формы" надо было написать слово "кнопки"...
46_55_41_44 (2004-09-09 09:40:00) [4]Слушай ты же сам уже ответ написал :)))
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:00) [5]Слушай ты же сам уже ответ написал :)))
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... и все!!!