Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.02.2009, 17:54   #1
juan666777
Пользователь
 
Аватар для juan666777
 
Регистрация: 24.01.2009
Сообщений: 84
По умолчанию Как вызвать в одном событие другое ?

Как вызвать события нажатия одной кнопки нажав на другую кнопку ?
Я раньше вроде это знал но забыл
Evil Skull
juan666777 вне форума Ответить с цитированием
Старый 08.02.2009, 17:59   #2
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,547
По умолчанию

Просто вызвать обработчик события кнопки, например: Button1Click (nil);
Arigato вне форума Ответить с цитированием
Старый 08.02.2009, 18:09   #3
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Лучше Button1Click(Self);
А то ругнется ...ИМХО
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 08.02.2009, 18:16   #4
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,547
По умолчанию

Цитата:
А то ругнется ...ИМХО
А с какого перепуга ему ругаться? Button1Click - обычная процедура с параметром Sender: TObject. Можно передать всё, что угодно, лишь бы тип совпал.
Arigato вне форума Ответить с цитированием
Старый 09.02.2009, 14:01   #5
Волк
Форумчанин
 
Аватар для Волк
 
Регистрация: 04.02.2009
Сообщений: 156
По умолчанию

Цитата:
Сообщение от Arigato Посмотреть сообщение
А с какого перепуга ему ругаться? Button1Click - обычная процедура с параметром Sender: TObject. Можно передать всё, что угодно, лишь бы тип совпал.
я пробовал ругается надо так как Kottof сказал
Все мы отчасти гении!Но на сколько мы умны настолько же мы и глупы!
Волк вне форума Ответить с цитированием
Старый 09.02.2009, 14:09   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
я пробовал ругается надо так как Kottof сказал
Наверное у тебя в коде обработчика прописано что-то такое что зависит от передаваемого параметра.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.02.2009, 16:47   #7
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

Переменная Sender (возвращает(указывает) ссылку на объект, (переменную) которая вызывает метод (процедура, функция) где указана Sender).
Поэтому : имеем процедуру-обработчик кнопки 1 :
....Button1Click (Sender: ....)
begin
некие действия
end;

Далее, в следуещем обработчике события : ...Button2Click (Sender ....)

указываем ссылку на первый обработчик с параметром Sender его же Button1Click (Sender) [здесь Sender указывает на Button1 ] и получим срабатывание по кнопке 1.Еще раз - Sender события по Button2 передает Sender-у по событию Button 1 выполнить часть программы.
Я специально не привожу никакой код для пояснения и (признаюсь специально) запутал все рассуждения. В программировании основное -
понять смысл задачи, код напишется потом.На любом языке
И не сомневайся даже ... отдых - кайф, работа - лажа!

Последний раз редактировалось DeKot; 09.02.2009 в 16:49.
DeKot вне форума Ответить с цитированием
Старый 09.02.2009, 17:54   #8
Волк
Форумчанин
 
Аватар для Волк
 
Регистрация: 04.02.2009
Сообщений: 156
По умолчанию

Цитата:
Сообщение от DeKot Посмотреть сообщение
Переменная Sender (возвращает(указывает) ссылку на объект, (переменную) которая вызывает метод (процедура, функция) где указана Sender).
Поэтому : имеем процедуру-обработчик кнопки 1 :
....Button1Click (Sender: ....)
begin
некие действия
end;

Далее, в следуещем обработчике события : ...Button2Click (Sender ....)

указываем ссылку на первый обработчик с параметром Sender его же Button1Click (Sender) [здесь Sender указывает на Button1 ] и получим срабатывание по кнопке 1.Еще раз - Sender события по Button2 передает Sender-у по событию Button 1 выполнить часть программы.
Я специально не привожу никакой код для пояснения и (признаюсь специально) запутал все рассуждения. В программировании основное -
понять смысл задачи, код напишется потом.На любом языке
проще написать Button1Click
Все мы отчасти гении!Но на сколько мы умны настолько же мы и глупы!
Волк вне форума Ответить с цитированием
Старый 09.02.2009, 18:02   #9
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Цитата:
... и (признаюсь специально) запутал все рассуждения
Вам это удалось... %(
Я уже совсем запутался...(

Вот лично у меня и так и так работает...
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 09.02.2009, 18:17   #10
Jeni
Форумчанин
 
Регистрация: 31.05.2007
Сообщений: 486
По умолчанию

Цитата:
Сообщение от DomiNick Посмотреть сообщение
Я уже совсем запутался...(
Вот лично у меня и так и так работает...
Да что же тут непонятного. Допустим есть Кнопка и Эдит, у них есть обработчики:
Код:
procedure TForm1.Edit1Change(Sender: TObject);
begin
  // Некий код
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Edit1Change(nil);
  // или так: Edit1Change(Sender);
end;
При щелчке на кнопке вызывается обработчик Эдита. Если передаваемый параметр неважен (обычно так и есть), то используется nil.
Jeni вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как программно вызвать Dial Up Helg Работа с сетью в Delphi 4 01.04.2009 23:05
Как вызвать Message с Edit'ом? Port 111 Общие вопросы Delphi 7 02.02.2009 02:18
Как передать параметр в другое(модальное) окно? kiber0net0 Общие вопросы Delphi 3 21.09.2008 13:03
Как вызвать прерывание в Delphi? Andrew Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 10 24.05.2007 17:17
Как вызвать процедуру ??? Marat Помощь студентам 8 02.03.2007 15:11