Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
3 / 2 / 2
Регистрация: 22.12.2016
Сообщений: 219
1

Несколько обработчиков на одну кнопку

27.01.2017, 13:59. Показов 1529. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Уважаемые подскажите как несколько обработчиков повесить на одну кнопку, в евен тах только один Онклик.
Есть допустим у меня 3 обработчика это тоже кнопки
Code Скопировано
1
2
3
void __fastcall TForm1::key1ButtonClick(TObject *Sender)
void __fastcall TForm1::key2ButtonClick(TObject *Sender)
void __fastcall TForm1::key3ButtonClick(TObject *Sender)
и есть одна кнопка, как к неё привязать 3 этих обработчика чтобы при нажатии одной кнопки срабатывали все 3 сразу? СПАСИБО!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.01.2017, 13:59
Ответы с готовыми решениями:

Несколько действий на одну кнопку
У меня есть действие a:=StrToInt(Edit1.Text); c:=(150+(a-150)*0.85); edit2.Text:=FloatToStr(c); и мне надо чтобы оно 10...

Несколько действий на одну кнопку
Всем доброго времени суток.Вопрос такой.Как сделать так чтобы кнопка выполнила несколько действий одновременно.

Несколько действий на одну кнопку
На MouseLeftButtonDown у меня помещены: 1. this.DragMove(); Который я повесил на Rectangle 2. var response =...

9
 Аватар для Dinkin
748 / 534 / 134
Регистрация: 31.05.2013
Сообщений: 3,076
Записей в блоге: 3
27.01.2017, 14:13 2
ну а из самих функциях запускать другие функции не устраивает?
0
3 / 2 / 2
Регистрация: 22.12.2016
Сообщений: 219
27.01.2017, 14:28  [ТС] 3
нет нужно чтобы по нажатию одной кнопки срабатывало эти 3 кнопки.
0
 Аватар для Dinkin
748 / 534 / 134
Регистрация: 31.05.2013
Сообщений: 3,076
Записей в блоге: 3
27.01.2017, 14:33 4
Ну ок, но на всяк вот вариант

C++ Скопировано
1
2
3
4
5
6
7
8
9
void __fastcall TForm1::key1ButtonClick(TObject *Sender)
{
 
 //Код для первой кнопки.....
 
 key2ButtonClick(NULL);
 key3ButtonClick(NULL);
}
//---------------------------------------------------------------------------
1
3 / 2 / 2
Регистрация: 22.12.2016
Сообщений: 219
27.01.2017, 14:45  [ТС] 5
всё устроило, всё работает, спасибо. я тоже так делал тока ошибку выдавало, оказывается нулл надо было прописать ))
0
Модератор
 Аватар для D1973
9714 / 6314 / 2437
Регистрация: 21.01.2014
Сообщений: 26,903
Записей в блоге: 3
30.01.2017, 12:08 6
раз все три кнопки должны отработать, то не уместней ли написать одну функцию и вызывать ее из событий кликов по кнопкам
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33109 / 21405 / 8219
Регистрация: 22.10.2011
Сообщений: 36,735
Записей в блоге: 9
30.01.2017, 13:37 7
Цитата Сообщение от sarsmen Посмотреть сообщение
нужно чтобы по нажатию одной кнопки срабатывало эти 3 кнопки
Налицо неправильная архитектура приложения. Опять в обработчики нажатия пихается весь код, вот и приходится вызывать их как обычные процедуры. Не для этого они придуманы. Они придуманы для того, чтобы отловить событие нажатия на кнопку и передать управление методу, который будет обрабатывать его. Если сделать так - то вопрос отпадет сам собой.
1
 Аватар для Dinkin
748 / 534 / 134
Регистрация: 31.05.2013
Сообщений: 3,076
Записей в блоге: 3
30.01.2017, 13:41 8
volvo, вот поддерживаю...Но такие темы, почти все у данного автора.
0
3 / 2 / 2
Регистрация: 22.12.2016
Сообщений: 219
30.01.2017, 14:02  [ТС] 9
Цитата Сообщение от D1973 Посмотреть сообщение
раз все три кнопки должны отработать, то не уместней ли написать одну функцию и вызывать ее из событий кликов по кнопкам
Именно так я и сделал.
0
Эксперт С++
 Аватар для Avazart
8483 / 6150 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
31.01.2017, 00:02 10
Цитата Сообщение от sarsmen Посмотреть сообщение
Уважаемые подскажите как несколько обработчиков повесить на одну кнопку, в евен тах только один Онклик.
Никак нельзя это тебе не делегаты из C#, кроме того я не понимаю нафиг оно вообще надо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.01.2017, 00:02
Помогаю со студенческими работами здесь

Несколько действий на одну кнопку в юнити
Всем привет, произошла такая ситуэйшн, немного не понял как сделать 2 действия на одну кнопку, прошу помочь! В моем случае все просто, у...

ATtiny2313. Несколько функций на одну кнопку
Всем привет. Люди, нужна помощь. У меня есть програмка, которая после каждого нажатия кнопки, увеличивает значение на 1. Начальное...

Как на одну кнопку задать несколько действий
есть UI кнопка. способ с bool переменной мне не подходит т.к. действий не 2 а больше как это реализовать?

Как на одну кнопку сделать несколько процедур
Подскажите пожалуйста: Как на одну кнопку сделать несколько процедур? Я сделала два ComboBox1.Text='OLD' then begin и...

Как задать несколько событий на одну кнопку?
var i=0; var a; function show(){ var box=document.getElementById("box"); box.style.backgroundColor="white"; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Циклы for в Python
py-thonny 17.03.2025
Существует множество ситуаций, когда нам нужно выполнить одно и то же действие несколько раз. Цикл for в Python — настоящий рабочий конь для большинства программистов. Если вам нужно пройтись по всем. . .
Предсказание ветвлений - путь к высокопроизводи­тельному C++
NullReferenced 17.03.2025
В высокопроизводительном программировании на C++ каждый такт процессора на счету. Когда речь заходит о разработке систем с низкой задержкой — будь то высокочастотная торговля, обработка потоковых. . .
Паттерн CQRS в C#
UnmanagedCoder 17.03.2025
Создание сложных корпоративных приложений часто требует нестандартных подходов к архитектуре. Один из таких подходов — паттерн CQRS (Command Query Responsibility Segregation), предлагающий простую,. . .
Паттерн Цепочка ответственности в C#
UnmanagedCoder 17.03.2025
Цепочка ответственности — это поведенческий паттерн проектирования, который позволяет передавать запросы последовательно по цепочке потенциальных обработчиков, пока один из них не обработает запрос. . . .
Создаем микросервисы с NestJS, TCP и Typescript
run.dev 17.03.2025
NestJS — фреймворк, который значительно упрощает создание серверных приложений на Node. js. Его прелесть в том, что он комбинирует концепции ООП, функционального программирования и предлагает. . .
Гексагональная архитектура со Spring Boot
Javaican 17.03.2025
Если вы когда-нибудь сталкивались с ситуацией, когда внесение простых изменений в базу данных или пользовательский интерфейс заставляло вас переписывать весь код, то вы точно оцените элегантность. . .
Позиционировани­е Kafka Consumer и Seek-операции
Javaican 17.03.2025
Что же такое Consumer Seek в Kafka? По сути, это API-метод, который позволяет программно указать, с какой позиции (offset) Consumer должен начать или продолжить чтение данных из партиции. Без этого. . .
Python NumPy: Лучшие практики и примеры
py-thonny 17.03.2025
NumPy (Numerical Python) — одна из ключевых библиотек для научных вычислений в Python. Она превращает Python из просто удобного языка общего назначения в среду для проведения сложных математических. . .
Java Micronaut в Docker: контейнеризация с Maven и Jib
Javaican 16.03.2025
Когда речь заходит о микросервисной архитектуре на Java, фреймворк Micronaut выделяется среди конкурентов. Он создан с учётом особенностей облачных сред и контейнеров, что делает его идеальным. . .
Управление зависимостями в Java: Сравнение Spring, Guice и Dagger 2
Javaican 16.03.2025
Инъекция зависимостей (Dependency Injection, DI) — один из фундаментальных паттернов проектирования, который радикально меняет подход к созданию гибких и тестируемых Java-приложений. Суть этого. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер