Регистрация Главная Сообщество
Сообщения за день Справка Регистрация
Навигация
Zhyk.org LIVE! Реклама на Zhyk.org Правила Форума Награды и достижения Доска "почета"

Програмно присвоить действие к Button2.Click

-

Вопросы и ответы, обсуждения

- Ваши вопросы по Pascal/Delphi только в данном разделе

Ответ
 
Опции темы
Старый 22.04.2012, 18:24   #1
 Разведчик
Аватар для Babls77
 
Babls77 скоро будет известенBabls77 скоро будет известенBabls77 скоро будет известен
Регистрация: 21.01.2011
Сообщений: 36
Популярность: 205
Сказал(а) спасибо: 215
Поблагодарили 45 раз(а) в 19 сообщениях
 
Exclamation Програмно присвоить действие к Button2.Click

Есть 3 кнопки и 1 redt .
Как присвоить програмно
(когда программа уже скомпилирована и работает)
Действие (Events) кнопке номер2 (Button2) при
нажатии на кнопку 1 (Button1) или на кнопку 3 (Button3).

Пример!

Если знаете как это воплотить в жизнь отпишите в теме плз.
Вложения
Тип файла: rar Пример.rar (172.5 Кб, 2 просмотров)
  Ответить с цитированием
Старый 22.04.2012, 18:45   #2
 Разведчик
Аватар для R.A.Z.O.R.
 
R.A.Z.O.R. скоро будет известенR.A.Z.O.R. скоро будет известенR.A.Z.O.R. скоро будет известенR.A.Z.O.R. скоро будет известенR.A.Z.O.R. скоро будет известен
Регистрация: 19.02.2012
Сообщений: 36
Популярность: 447
Сказал(а) спасибо: 25
Поблагодарили 50 раз(а) в 40 сообщениях
Отправить сообщение для R.A.Z.O.R. с помощью Skype™
 
По умолчанию Re: Програмно присвоить действие к Button2.Click


Создаешь такую процедуру:
Код:
procedure Имя_твоей_формы.ButClick(Sender: TObject);
begin
ShowMessage('Новое действие!');
end;
А присваиваешь так:
Код:
Button1.OnClick := ButClick;
  Ответить с цитированием
Пользователь сказал cпасибо:
Babls77 (16.05.2012)
Старый 22.04.2012, 20:16   #3
 Разведчик
Аватар для Tip.the.besT
 
Tip.the.besT на правильном путиTip.the.besT на правильном пути
Регистрация: 17.01.2012
Сообщений: 19
Популярность: 126
Сказал(а) спасибо: 8
Поблагодарили 30 раз(а) в 11 сообщениях
Отправить сообщение для Tip.the.besT с помощью ICQ Отправить сообщение для Tip.the.besT с помощью Skype™
 
По умолчанию Re: Програмно присвоить действие к Button2.Click

Можно просто вызвать процедуру да и всё. Заготовил несколько процедур и вызывай в зависимости от событий.
  Ответить с цитированием
Старый 22.04.2012, 21:02   #4
 Разведчик
Аватар для Babls77
 
Babls77 скоро будет известенBabls77 скоро будет известенBabls77 скоро будет известен
Регистрация: 21.01.2011
Сообщений: 36
Популярность: 205
Сказал(а) спасибо: 215
Поблагодарили 45 раз(а) в 19 сообщениях
 
По умолчанию Re: Програмно присвоить действие к Button2.Click

Цитата:
Сообщение от R.A.Z.O.R.Посмотреть сообщение

Создаешь такую процедуру:
Код:
procedure Имя_твоей_формы.ButClick(Sender: TObject);
begin
ShowMessage('Новое действие!');
end;
А присваиваешь так:
Код:
Button1.OnClick := ButClick;

Спс.

Добавлено через 2 минуты
Цитата:
Сообщение от Tip.the.besTПосмотреть сообщение
Можно просто вызвать процедуру да и всё. Заготовил несколько процедур и вызывай в зависимости от событий.


У меня просто очень большое кол-во кнопок и каждой надо почти одни и те же действия присваивать !
Если это писать всё в самой программе в исходнике то это писанины тьма ...

Последний раз редактировалось Babls77; 22.04.2012 в 21:05. Причина: Добавлено сообщение
  Ответить с цитированием
Старый 22.04.2012, 22:16   #5
 Разведчик
Аватар для Tip.the.besT
 
Tip.the.besT на правильном путиTip.the.besT на правильном пути
Регистрация: 17.01.2012
Сообщений: 19
Популярность: 126
Сказал(а) спасибо: 8
Поблагодарили 30 раз(а) в 11 сообщениях
Отправить сообщение для Tip.the.besT с помощью ICQ Отправить сообщение для Tip.the.besT с помощью Skype™
 
По умолчанию Re: Програмно присвоить действие к Button2.Click

Цитата:
Сообщение от Babls77Посмотреть сообщение
Спс.

Добавлено через 2 минуты


У меня просто очень большое кол-во кнопок и каждой надо почти одни и те же действия присваивать !
Если это писать всё в самой программе в исходнике то это писанины тьма ...

Дак я за то и говорю, создали процедуру:
Код:
procedure pars;
begin
showmessage('Ok');
end;
И потом вызываете:
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
pars;
end;

//Другая кнопка
procedure TForm1.Button2Click(Sender: TObject);
begin
pars;
end;
//И т.д.
В этом случае вы можете задавать ещё и параметры для действий/расчётов.

Это будет уже выглядеть так:
Код:
procedure pars(s:string);
begin
showmessage(s);
end;

//теперь вызываем

procedure TForm1.Button1Click(Sender: TObject);
begin
pars('Сосисочная');
end;
В любом случае дело ваше
  Ответить с цитированием
Пользователь сказал cпасибо:
Babls77 (23.04.2012)
Старый 22.04.2012, 22:45   #6
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 727
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: Програмно присвоить действие к Button2.Click

А всё можно сделать вообще без лишнего кода:

[Ссылки могут видеть только зарегистрированные пользователи. ]

[Ссылки могут видеть только зарегистрированные пользователи. ]

Ну, думаю, ты понял
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.


  Ответить с цитированием
Пользователь сказал cпасибо:
Babls77 (23.04.2012)
Старый 23.04.2012, 12:54   #7
 Разведчик
Аватар для Babls77
 
Babls77 скоро будет известенBabls77 скоро будет известенBabls77 скоро будет известен
Регистрация: 21.01.2011
Сообщений: 36
Популярность: 205
Сказал(а) спасибо: 215
Поблагодарили 45 раз(а) в 19 сообщениях
 
По умолчанию Re: Програмно присвоить действие к Button2.Click

Цитата:
Сообщение от VeTaL_UAПосмотреть сообщение
А всё можно сделать вообще без лишнего кода:

[Ссылки могут видеть только зарегистрированные пользователи. ]

[Ссылки могут видеть только зарегистрированные пользователи. ]

Ну, думаю, ты понял

Это очень полезная инфа , но я не совсем то имел ввиду.

У меня в программе можно добавлять не ограниченное количество кнопок с разными , но и в тоже время похожими функциями а эту прогу я просто сделал для примера!
  Ответить с цитированием
Старый 24.04.2012, 12:45   #8
Super Moderator
 Сержант
Аватар для Рэйзор
 
Рэйзор сломал счётчик популярности :(Рэйзор сломал счётчик популярности :(Рэйзор сломал счётчик популярности :(Рэйзор сломал счётчик популярности :(Рэйзор сломал счётчик популярности :(Рэйзор сломал счётчик популярности :(Рэйзор сломал счётчик популярности :(Рэйзор сломал счётчик популярности :(Рэйзор сломал счётчик популярности :(Рэйзор сломал счётчик популярности :(Рэйзор сломал счётчик популярности :(
Регистрация: 20.07.2010
Сообщений: 137
Популярность: 26409
Сказал(а) спасибо: 52
Поблагодарили 566 раз(а) в 197 сообщениях
 
По умолчанию Re: Програмно присвоить действие к Button2.Click

У всех кнопок событие OnClick содержит ссылку на процедуру типа TNotifyEvent
Код:
 TNotifyEvent = procedure(Sender: TObject) of object;
Цитата:
Сообщение от Babls77Посмотреть сообщение
У меня в программе можно добавлять не ограниченное количество кнопок с разными , но и в тоже время похожими функциями а эту прогу я просто сделал для примера!

Пишешь нужное кол-во процедур, соответствующих описанию TNotifyEvent, и кидаешь им ссылки на процедуры, например:
Код:
...
public
   procedure MyProc1(Sender:TObject);
   procedure MyProc2(Sender:TObject);
...
   ButtonsArray[1].OnClick := MyProc1;
   ButtonsArray[2].OnClick := MyProc2;
Ссылки на процедуры можно в массив загнать, если вдруг нужно.
________________
-> Keep2Me <-
  Ответить с цитированием
Пользователь сказал cпасибо:
Babls77 (24.04.2012)
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] Поиск программочек artemler172 Общение и обсуждение Perfect World 4 16.10.2011 12:06
[Скрипт] Програмно закрываем и открываем процесс . (Autoit) Rakim Скрипты и прочий софт для Point Blank 7 02.07.2011 22:39
[Помогите!] КАк присвоить акаунт зная пароль и лог от него lis101092 Общение и обсуждение Perfect World 4 11.06.2010 09:21

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 12:22.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net