Главная страница
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.058 c
1-1086205262
Igor
2004-06-02 23:41
2004.06.13
DbMemo &html.


1-1085646258
Lexandr
2004-05-27 12:24
2004.06.13
RTF и буфер обмена


1-1085826961
Alek
2004-05-29 14:36
2004.06.13
Как расшифровать строку?


14-1085370471
SammIk
2004-05-24 07:47
2004.06.13
Гребанные вирусы


1-1086061203
User_OKA
2004-06-01 07:40
2004.06.13
String Grid