|
28 / 28 / 10
Регистрация: 10.03.2012
Сообщений: 249
|
|
Как подписать двести кнопок на одно событие04.01.2013, 19:57. Показов 7822. Ответов 33
Метки нет (Все метки)
Есть 200 кнопок. Клик по каждой из них должен вызвать какой-то код, одинаковый для всех. Первое что пришло в голову - обратиться как-то к кнопкам как ячейкам двухмерного массива.
0
|
|
| 04.01.2013, 19:57 | |
|
Ответы с готовыми решениями:
33
Подписать на событие несколько кнопок в цикле Подписать несколько TextBox на одно событие
|
|
Master of Orion
|
|
| 06.01.2013, 09:31 | |
|
van Persie, не лучше, по-своему опыту говорю.
kravam, еще раз, автору по-заданию нужно вызвать один и тот же метод, по крайней мере он так сформулировал. Если ВАМ нужно обращаться к разным методам, то тогда в цикле вообще этого не получится сделать, только если методы не будут называться meth1, meth2... тогда способ есть
0
|
|
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
||
| 06.01.2013, 12:34 | ||
|
Я так понимаю, разговор о терминах щас пойдёт? Тогда поскольку я ставлю задачу, термины будут моими. Второй раз:
Обращаю ваше внимание- по фиг что это будет- обработчики или ещё что. Лишь бы выполнялось условие. Сделаем циклом без массива делегатов?
0
|
||
|
Master of Orion
|
||||||
| 06.01.2013, 20:21 | ||||||
|
kravam, а зачем тут цикл, если делегаты все равно придется потом заполнять
0
|
||||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|||||||
| 06.01.2013, 23:05 | |||||||
0
|
|||||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
||||||
| 06.01.2013, 23:17 | ||||||
|
Если будет 200 функций и тысяча кнопок- то да 200 раз else if. Альтренатива- тысячу раз написать присвоение del[0] = MyFunc1;
Добавлено через 1 минуту А если 200 функций и 200 кнопок то каждому делегату свою функцию (200 раз) и всё на этом
0
|
||||||
|
Master of Orion
|
||||||
| 06.01.2013, 23:41 | ||||||
|
kravam, тогда зачем нужны делегаты если можно то же самое делать с кнопками?
0
|
||||||
| 06.01.2013, 23:50 | |
|
Не по теме: Psilon, kravam, девочки не ссорьтесь) Думаю автор уже получил ответ
1
|
|
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|
| 07.01.2013, 00:06 | |
|
Да, но если функции имеют другой прототип, отличный от (object sender, EventArgs e) (но одинаковый меж собой), например просто (), тогда уже так изящно
+= не сделать, нет разве?
1
|
|
|
Master of Orion
|
|
| 07.01.2013, 00:10 | |
|
kravam, функция от делегата отличается (в данном случае) только содержимым. Все, что допустимо по функции, вызываемой по делегату, допустимо при вызову напрямую и наоборот. Фактически вы просто плодите лишние ссылки на одно и то же. Это как иметь массив объектов из заводить массив указателей на какое-то поле этих объектов. Объекты и так уже есть, достаточно просто по имени обратиться в имени. Вы просто вводите псевдонимы функций за счет делегатов, но в этом мало смысла.
1
|
|
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
||||||
| 07.01.2013, 00:47 | ||||||
|
Я всё понимаю, кроме одного, почему у меня ВАШ вариант не компилится, вот это вот:
0
|
||||||
|
Master of Orion
|
||||||
| 07.01.2013, 00:59 | ||||||
|
Ну можно что-нибудь в таком духе
0
|
||||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|
| 07.01.2013, 01:21 | |
|
Ладно, как-нибудь изучу, всё равно у меня не получается компилить с моими функциями f_*
1
|
|
|
Master of Orion
|
|
| 07.01.2013, 01:22 | |
|
kravam, ну у меня запускается и даже работает
Для удобства написал метод с вашими любимыми делегатами, который возвращает нужный метод в зависимости от индекса, хотя это тоже излишне, но пусть будет.
1
|
|
| 07.01.2013, 01:22 | |
|
Создать одно событие для нескольких кнопок Как подписать кнопку на событие Как подписать компонент на событие Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|