Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
 Аватар для xalera
0 / 0 / 0
Регистрация: 08.01.2012
Сообщений: 10

Выполнить код из обработчика нажатия Button1 при нажатии Button2

10.01.2012, 23:05. Показов 3864. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть 2 кнопки. на одной стоит событие. на вторую надо поставить такое же событие но перед его выполнением надо выполнить действия... подскажите как это возможно реализовать???
C++
1
2
3
4
5
6
7
8
9
10
void __fastcall TForm1::Button1Click(TObject *Sender)
{
//тут действия 1 кнопки
}
 
void __fastcall TForm1::Button2Click(TObject *Sender)
{
//тут действия 2 кнопки
// а тут надо чтобы сработала 1 кнопка
}
 Комментарий модератора 
xalera, Правила
3.3. Запрещено создавать темы с бессмысленными названиями вроде "Помогите!", "Вопрос" и т.п.
Изначальное название темы: "Noobs вопрос".
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.01.2012, 23:05
Ответы с готовыми решениями:

Как сделать, чтобы button2 полз вправо при нажатии button1?
как сделать чтобы button2 полз в право при нажатии button1. и как сделать так чтобы button2 полз влево при нажатии button3 . ползти должен...

Как сделать, чтобы при нажатии на button1 и button2 выдавалось сообщение?
ребят помогите,не могу разобраться как сделать что бы при нажатии на button1 и на button2 выдавалось сообщение? Добавлено через 1 час...

Простой секундомер. На Button1 запускается, на Button2 сбрасывается.
Здравствуйте уважаемые программисты. Хочу написать простой секундомер. Что-то вроде нажимаеш на Button1 и он запускается?...

7
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
10.01.2012, 23:08
C++
1
2
3
4
5
void __fastcall TForm1::Button2Click(TObject *Sender)
{
//тут действия 2 кнопки
  Button1->Click(); // а тут надо чтобы сработала 1 кнопка
}
1
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
11.01.2012, 00:31
А я так делаю:
C++
1
2
3
4
5
void __fastcall TForm1::Button2Click(TObject *Sender)
{
//тут действия 2 кнопки
  Button1Click(NULL);
}
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
12.01.2012, 08:46
А можно сделать так.
Назначить для OnClick для обоих кнопок одну и ту же функцию, а там написать
C++
1
2
3
4
  if (Sender->Name=="Button2") {
   // действия 2-й кнопки
  }
   // действия обоих кнопок
0
 Аватар для Lelik-pahan
1709 / 905 / 207
Регистрация: 25.11.2009
Сообщений: 1,850
12.01.2012, 09:16
Цитата Сообщение от Байт Посмотреть сообщение
if (Sender->Name=="Button2")
Sender не имеет свойства Name. Чтобы так делать, сначало нужно привести его к типу TButton
1
Покинул форум
3189 / 1368 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
12.01.2012, 19:07
Цитата Сообщение от Lelik-pahan Посмотреть сообщение
Чтобы так делать, сначало нужно привести его к типу TButton
Например, вот так:
C++
1
2
3
4
if ( ((TButton*)Sender)->Name=="Button2" ) {
   // действия 2-й кнопки
  }
   // действия обоих кнопок
1
 Аватар для BRcr
4043 / 2333 / 292
Регистрация: 03.02.2011
Сообщений: 5,066
Записей в блоге: 10
12.01.2012, 20:00
Цитата Сообщение от Lelik-pahan Посмотреть сообщение
Чтобы так делать, сначало нужно привести его к типу TButton
или так...
C++
1
2
3
4
5
6
7
8
9
try {
  if ( dynamic_cast<TButton*>(Sender)->Name == "Button2" ) {
     // действия 2-й кнопки
  }
}
catch(...) {
  return; // нехорошо всякую брехню заместо Sender пихать, да уж бывает...
}
// действия обоих кнопок
1
0 / 0 / 0
Регистрация: 14.01.2012
Сообщений: 7
14.01.2012, 20:54
Вариант 1

C++
1
2
3
4
5
void __fastcall TForm*::Button2Click(TObject *Sender)
{
Button1Click(Sender); /* Для большинства случаев можно использовать переменную Sender в 
качестве параметра для вызова другого метода формы, где требуется аргумент TObject *Sender. */
}
Вариант 2

Первое условие - уже должен быть метод Button1Click, вызывающийся из кнопки Button1.
Выделить Button2 на форме (или перейти к нему в инспекторе объекта), перешли в инспекторе на вкладку Events/События. Напротив события OnClick пишем Button1Click <Enter>. Таким образом, при получении программой собатия Button2::OnClick вызывается метод Button1Click.

Вариант 3(сродни варианту 2)

В конструкторе формы или её методе FormCreate записать:
C++
1
Button2->OnClick = Button1Click;
При этом происходит то же, что и в варианте 2.
P.S. При этом также неплохо уже иметь процедуру Button1Click.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.01.2012, 20:54
Помогаю со студенческими работами здесь

При нажатии на Button1 в Edit1 или Label1 записывается цифра 50, при повторном нажатии к этой 50 прибавляется еще 50. Как сделать?
Помогите сделать следующее. При нажатии на Button1 в Edit1 или Label1 записывается цифра 50, при повторном нажатии к этой 50 прибавляется...

При нажатии на button выполнить свой код + код другого баттона
Как?

Разместить еще одну кнопку button2 чтобы она было ровно кнопкой Button1
Здравствуйте! Я создал одну кнопку Button1 в jFrame разместил сверху окна. Вот код: but = new JButton(&quot;Рассчитать...

Выполнить код при нажатии кнопки
Как при нажатии кнопки ( button ) , выполнить вот это действие time 0:00 &gt;nul, через консольное приложение получается а вот именно при...

После нажатии label изменить код кнопки button1.onclick
Как сделать чтобы после нажатии label изменить код кнопки button1.onclick в delphi


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru