| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка Windows Forms > switch(?????????) |
| Автор: Berserk 12.1.2007, 12:08 | ||
| Есть ToolStrip, имеются также ToolStripMenuItems. Есть button, Ок которая. При нажатии на кнопку необходимо, чтоб делалось опредаленное событие. Можно конечно создать несколько кнопок Ок, но это если ...MenuItems несколько, а если их много, то не выход получается. При каждом выборе ...MenuItems выполняется только одно действие. Так что можно поставить на месте вопросов, чтоб в case ставить один из пунктов ...MenuItems???
|
| Автор: ivashkanet 12.1.2007, 12:38 | ||
| Berserk, что-то не понятно Ты выбираешь item из меню, а потом нажимаешь на ok и хочешь выполнить команду, которая соответсвует выбранному айтему? Но этого нельзя сделать, меню айтем не запоминает, что на него нажали. Он может только среагировать на нажатие на него Сделай общий обработчик для нажатий на разные пункты меню:
и будет тебе счастье |
| Автор: Berserk 12.1.2007, 13:06 | ||
| Возможно я не все дорассказал. При выборе ...MenuItem'а появляются определенные листбоксы, комбобоксы и еще куча всего. Поклацав по боксам и не боксам, получаем определенные данные. Но дело в том, что от того какой ...MenuItem мы нажмем зависит то, что появиться на форме. А кнопка Ок всегда будет одна и таже. Я думаю мне это пойдет. Можно даже и без if скорее всего. Попробую спасибо Попробовал A value of an integral type expected(Значение ожидаемого целого типа)
|
| Автор: marcusmae 12.1.2007, 15:31 | ||
по-моему, так
нельзя делать. Под свичом могут быть только интегральные типы : sbyte, byte, short, ushort, int, uint, long, ulong, char, string или enum-type. |
| Автор: maxim1000 12.1.2007, 15:49 |
| можно сделать так: привязать каким-либо образом интегральное значение к каждому пункту меню, а уже его ставить в switch иногда подобные объекты сами предоставляют эту возможность, а можно завести что-нибудь отдельное для хранения соответствий (в C++ подошёл бы std::map, думаю и здесь что-то найдётся) P.S. ну а потом уже можно и от switch'а перейти к полиморфизму, но это зависит от масштабов кода в switch'е... |
| Автор: maxim1000 12.1.2007, 16:49 |
а строки можно? |
| Автор: ivashkanet 12.1.2007, 17:04 |
Константные -- да. Я компилировал |
| Автор: Berserk 15.1.2007, 09:05 |
| Все получается без проблем. Как говарится: "Учи мат. часть Буду учить. |