Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> 6 кнопок, 6 кнопок 
:(
    Опции темы
aksei
  Дата 30.1.2011, 19:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 30.1.2011

Репутация: нет
Всего: нет



Имеется 6 кнопок. Задача такая, Например, если нажимаю первую и 4 кнопку то должен произойти одна события, если пятую и вторую то другая и т.д. Этого как можно реализовать?? Помогите.
PM MAIL   Вверх
Экскалупатор
Дата 30.1.2011, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



aksei, обрабатывай событие click у кнопок.
PM MAIL ICQ   Вверх
A5uKa
  Дата 1.2.2011, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



Ну вот так назначаем событии кнопкам

Код

Кнопка.Click += new RoutedEventHandler(События_Кнопки1);


Вот так пишет саму событию

Код

private void События_Кнопки1(object sender, RoutedEventArgs e)
{
  Тут код событии
}


Конкретизируйте вопрос.

Цитата

должен произойти одна события

Стой... Так он женщина или мужчина ?
PM   Вверх
Экскалупатор
Дата 1.2.2011, 15:31 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



Цитата(A5uKa @  1.2.2011,  12:04 Найти цитируемый пост)
Стой... Так он женщина или мужчина ?

оно еще не определилось, а по сему просто событие.
PM MAIL ICQ   Вверх
Fortnox
Дата 1.2.2011, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 373
Регистрация: 31.10.2008
Где: Ростов-на-Дону

Репутация: 2
Всего: 22



Назначьте одни и те же события для нужных кнопок, например:
Код

public void ClickOne(object sender, EventArgs e)
{
  // code
}

public void ClickTwo(object sender, EventArgs e)
{
  // code
}

// и назначаем события в коде где-нибудь или через панель свойств
button1.Click += ClickOne;
button4.Click += ClickOne;

button2.Click += ClickTwo;
button5.Click += ClickTwo;

PM MAIL   Вверх
wester
Дата 2.2.2011, 01:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



A5uKa, 
cовсем можно запутать человека. маршрутизируемые событие поддерживается только в WPF, 

на мой взгляд создавать шесть событий не есть хорошо, так как придется очень сильно подумать над взаимодействием между собой

я бы подписал все шесть кнопок на одно событие, а в событии проверял бы условия

хотя с самой программой что не то, зачем нужно столько состояний непонятно, лучше разделить большое условие не несколько условий.


вникся в вопрос.
ужас  smile 

Это сообщение отредактировал(а) wester - 2.2.2011, 01:44
PM MAIL   Вверх
Экскалупатор
Дата 2.2.2011, 08:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



wester, одно событие на все кнопки далеко не фонтан. придется устраивать хороводы проверок и прочее(с таким же успехом почему бы все кнопки на форме не завязывать на одно событие???). предложенный Fortnox вариант самый кошерный. событий немного(ведь не на каждую кнопку нужно отдельное событие) и проверок не нужно совсем.
PM MAIL ICQ   Вверх
cream
Дата 2.2.2011, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



Люди, тут кто-нибудь обратил внимание на логическое "И" в вопросе?
Цитата
Например, если нажимаю первую И 4 кнопку то должен произойти одна события, если пятую и вторую то другая и т.д.

Автору нужно чтобы обрабатывалось 2 действия, а не 1. Поэтому лучше просто завести список состояний кнопок, и при нажатии
изменять и проверять его(ну и очищать конечно). И я согласен с wester, достаточно 1 обработчика событий на все кнопки.

Можно еще флаги заюзать вообще норм будет.

Это сообщение отредактировал(а) cream - 2.2.2011, 15:39
PM MAIL   Вверх
Экскалупатор
Дата 2.2.2011, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



cream, учитывая косноязычность автора думаю, что логическим И можно пренебречь...


да и к тому же самому автору видно уже не интересно знать как и что делать.


вот объясни почему если предполагается два-три разных функционала (разные кнопки разные события) то удобно все это запихнуть в одно событие? вот я что то совсем не могу понять крутость такого решения.
PM MAIL ICQ   Вверх
cream
Дата 2.2.2011, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



Цитата(Экскалупатор @  2.2.2011,  16:40 Найти цитируемый пост)
вот объясни почему если предполагается два-три разных функционала (разные кнопки разные события) то удобно все это запихнуть в одно событие? вот я что то совсем не могу понять крутость такого решения.

Кнопки разные, а событие одно - Click. Если им задается обработка как в вопросе автора(я не думаю что это опечатка smile ), 
то совсем не грех уменьшить количество лишнего(повторяющегося) кода. 
Я ж не говорю, что надо всегда это делать, просто тут можно.

А насчет разного функционала, я телепатией еще не владею, чтоб знать что там автор хотел.
PM MAIL   Вверх
Экскалупатор
Дата 2.2.2011, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



ну автор описал как минимум два варианта реагирования на кнопки. почему их нужно обрабатывать по одному обработчику события? я думаю что логично было бы делать два.
PM MAIL ICQ   Вверх
cream
Дата 2.2.2011, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



Напишу как я вижу эту задачу:
Всего 6 кнопок; нажимаются пары кнопок (1-2, 1-3, 1-4,...,5-6), всего около... э 15 вариантов разных событий.
Теперь вопрос как это реализовать не повторяя кода, каждым обработчиком кнопки?
Можно конечно в каждом проверять чего там нажато, но смысл?
PM MAIL   Вверх
Экскалупатор
Дата 2.2.2011, 20:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



))) я понял что ты имел ввиду. но автор темы не писал что ему нужны 1 и 2, 1 и 3, и пр. он писал 1 и 4, 2 и 5, и очевидно 3 и 6. т.е. постоянно разные комбинации кнопок и при этом вполне однозначные, а не разные. а тут вполне адекватное и небольшое количество обработчиков событий, (т.е. на 6 кнопок, исходя из слов автора, нужно 3 события).

Это сообщение отредактировал(а) Экскалупатор - 2.2.2011, 20:18
PM MAIL ICQ   Вверх
cream
Дата 2.2.2011, 20:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 23.7.2010

Репутация: 1
Всего: 1



Экскалупатор, окей убедил smile 
PM MAIL   Вверх
aksei
Дата 4.2.2011, 06:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 30.1.2011

Репутация: нет
Всего: нет



Я мужчина. Извините я был в больнице. Это типа как маршрут на карте? Указываешь одну точку, то ничего не происходит, указываешь вторую, то строит маршрут и считает дистанцию.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0966 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.