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

Вниз

Селф?   Найти похожие ветки 

 
init13 ©   (2004-06-02 21:26) [0]

Есть некий код, которій отрабатывает по нажатии кнопи, т.е.:

procedure TfMain.Button1Click(Sender: TObject);
begin
//
end;

Нужно теперь повторить тоже самое, например при создании формы. Но что б не переписывать готовую процедуру, а вызвать ту, что исполняется онБатонКлик. Делаю:

procedure TfMain.FormCreate(Sender: TObject);
begin
TfMain.Button1Click(Self.Button1); ясен пень не работает....
end;

Как? Подскажите...


 
YurikGL ©   (2004-06-02 21:27) [1]

Попробуй
TfMain.Button1Click(Self); ясен пень не работает....


 
init13 ©   (2004-06-02 21:28) [2]

не. тоже не выйдет....


 
Verg ©   (2004-06-02 21:31) [3]

TfMain....- шутишь?


> procedure TfMain.FormCreate(Sender: TObject);
> begin
> {TfMain.}Button1Click({Self.}Button1);{ ясен пень не работает....}
> end;


 
Подкрадуха ©   (2004-06-02 21:32) [4]

Попробуй не FormCreate, а FormShow


 
init13 ©   (2004-06-02 21:36) [5]

to [3] Verg
или
Button1Click(Self);
:)

ясно вопщем, намудрил... спасибо. :)


 
Anatoly Podgoretsky ©   (2004-06-02 21:52) [6]

Button1.Click;


 
evvcom ©   (2004-06-03 00:00) [7]

Если в FormCreate надо вызвать только обработчик Button1Click, то в инспекторе объектов на закладке Events на событие OnCreate формы fMain из списка сразу выбрать обработчик Button1Click. А TfMain.FormCreate в том виде, в каком он есть вообще не нужен.


 
Ske4er   (2004-06-03 01:44) [8]

Всегда делаю так:
fMain.Button1Click(Sender);


 
KSergey ©   (2004-06-03 07:00) [9]

> Ske4er   (03.06.04 01:44)
> Всегда делаю так:

Ну и напрасно


 
Sandman25 ©   (2004-06-03 09:06) [10]

[9] KSergey ©   (03.06.04 07:00)

Точно. Ненавижу, когда мне дают разбираться с другим кодом и там есть обработчики вида:

procedure TfmPluginMain.FormShow(Sender: TObject);
begin
 ...
 rbIntervalDatesClick(nil);
 clNalogRegNumChange(nil);
 clRegistrRegNumChange(nil);
 clReestrListNumReestrChange(nil);
 cbAllFormularsClick(nil);
end;

Потом полчаса сидишь и разбираешься, что они делают и зачем вызваны...
Нормальные имена давать надо, причем использовать не обработчики, а "обычные" методы


 
KSergey ©   (2004-06-03 09:47) [11]


> [10] Sandman25 ©   (03.06.04 09:06)

Вообще-то я скорее имел в виду вот это: fMain., хотя [6] Anatoly Podgoretsky ©   (02.06.04 21:52) вообще правее всех правых, по-моему, в плане ответа на вопрос.


 
Sandman25 ©   (2004-06-03 10:19) [12]

[11] KSergey ©   (03.06.04 09:47)

Я так не рекомендую делать по нескольким причинам:
1) при переименовании кнопки придется менять код.
2) неясно, что же именно делает данная кнопка
3) при изменении интерфейса (замена кнопки на меню, например) придется изменять код, мучительно вспоминая, что же делала удаленная кнопка


 
GuAV ©   (2004-06-03 10:56) [13]


> Вообще-то я скорее имел в виду вот это: fMain

вот-вот внутри методов объекта вместо ссылок на экземпляр должен быть "self", т.е. fMain заменить на self и убрать за ненадобностью, т.к. "with self do" итак подразумевается...



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

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

Наверх




Память: 0.49 MB
Время: 0.028 c
1-1085918049
kalmykovser
2004-05-30 15:54
2004.06.13
Как заглушить нажатие клавиши Win (vk_rwin or vk_lwin)


14-1085402763
sucer
2004-05-24 16:46
2004.06.13
Посмотрите что делает эта гадина INTEL


4-1083823284
alsov1
2004-05-06 10:01
2004.06.13
Как считать уникальный номер с CD и есть ли такой вообще?


3-1084813754
loser
2004-05-17 21:09
2004.06.13
Что такое index is out of date


4-1083660910
NetWorK
2004-05-04 12:55
2004.06.13
Отключение жестких дисков и ЦПУ