![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как передать Sender новой форме? [D7, WinXP]
mouse_web © (2004-08-17 17:48:00)У меня 2 формы. На одной из них 2 кнопки. При нажатии на кнопки открывается окно формы, как мне передать окну Sender этих кнопок.
Уже все методы перепробовал.
Помогите, пожалуйста.
Rem (2004-08-18 12:21:00) [1][16]
Если мне не изменяет память:
...
9:00 Завтрак
10:00 Прогулка
11:00 Подвиг
12:00 Познать самое себя
...
(С) Расписание дня барона Мюнхаузена
P.S. Сорри за возможные неточности и отклонение от темы
Fay (2004-08-17 20:09:00) [2]2 Rem (17.08.04 18:26) [15]
>> 4. Познать самое себя... :)
Фу, как это грубо!
8)
Rem (2004-08-17 18:26:00) [3][11]
1. Перенести код из FormActivate в соответствующий конструктор.
2. Воспользоваться вспомогательный полем данных.
3. Изобрести велосипед.
4. Познать самое себя... :)
alless (2004-08-17 18:26:00) [4]2 Skier © (17.08.04 18:24) [13]
Да не надо ему никаких Sender-ов, это понятно из
mouse_web (17.08.04 18:12) [8]
Skier (2004-08-17 18:24:00) [5]>mouse_web (17.08.04 17:48)
Ты можешь написать у формы метод Setup(...) и передать туда
хоть 100 параметров...
alless (2004-08-17 18:20:00) [6]procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Tag:=0;
Form2.Show;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Tag:=1;
Form2.Show;
end;
procedure TForm2.FormActivate(Sender: TObject);
begin
if tag=0 then
Showmessage('0') else
Showmessage('1')
end;
mouse_web (2004-08-17 18:19:00) [7]
> Rem (17.08.04 18:16) [10]
А как мне это использовать?
У меня действия на выполение формы записаны в
procedure TForm2.FormActivate(Sender: TObject);
Rem (2004-08-17 18:16:00) [8][8]
TForm3 = class(TForm)
constructor CreateByFirstMethod(a_Owner: TComponent);
constructor CreateBySecondMethod(a_Owner: TComponent);
end;
Rem (2004-08-17 18:13:00) [9]Прошу прощения:
TForm3 = class(TForm)
constructor Create(a_Owner: TComponent; a_Sender: TObject); reintroduce;
end;
mouse_web (2004-08-17 18:12:00) [10]alless
Именно так.
На одну кнопку нажимаю, открывается форма и производятся некие действия. На другую нажимаю открывается таже форма, но выполняются другие действия.
VMcL (2004-08-17 18:10:00) [11]>> mouse_web (17.08.04 17:58) [3]
Button1.OnClick := Form2.Button1Click;
?
Rem (2004-08-17 18:09:00) [12]
TForm3 = class(TForm)
constructor Create(a_Owner: TComponent; a_Sender: TObject);
end;
alless (2004-08-17 18:06:00) [13]я так понял что если нажимать на одну, делать чтото на другой, другие действия, да?
mouse_web (2004-08-17 17:59:00) [14]
> VMcL ©
> Ну раз уже все перепробовал и не получается, значит никак.
Все какие знал :)
mouse_web (2004-08-17 17:58:00) [15]во второй форме у меня написан код который должен сработать после открытия формы, Sender'ом мне нужно знать на какую кнопку нажимаю и передать его форме:
procedure TForm2.FormActivate(Sender: TObject);
VMcL (2004-08-17 17:56:00) [16]>> mouse_web (17.08.04 17:48)
> Уже все методы перепробовал.
Ну раз уже всеперепробовал и не получается, значит никак.
alless (2004-08-17 17:55:00) [17]вот этот Sender? Form1.Button1.Handle ?