![]() |
|
Модераторы: gambit, Partizan |
![]()
|
|
| VladCSharp |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 11.10.2005 Репутация: нет Всего: нет |
как проконтролировать и недопустить повторного запуска такого же окна, а еще лучше активизировать его?
|
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
Завести в родительской форме переменную с типом ChildForm. При добавлении дочерней MDI-формы, проверять переменную, и если не null - то не создавать новую форму, а активировать существующую. При закрытии дочерней MDI-формы сбрасывать переменную в null.
-------------------- ![]() |
|||
|
||||
| nikf |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 127 Регистрация: 6.6.2005 Где: город-герой Жирно вск Репутация: нет Всего: 1 |
Непонятно тогда зачем создавать MDI проект если там будет всего одна форма - есть проект SDI
Это сообщение отредактировал(а) nikf - 27.10.2005, 09:46 |
|||
|
||||
| arilou |
|
||||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: нет Всего: 61 |
VladCSharp
Если ты имел ввиду "как проконтролировать и недопустить повторного запуска child-формы, если одна такая форма уже открыта", то: Добавь такой метод в класс MDI формы.
юзаешь так
|
||||
|
|||||
| VladCSharp |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 11.10.2005 Репутация: нет Всего: нет |
всем большое спасибо, все получилось, все работает
|
|||
|
||||
| mal |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 28.5.2007 Репутация: нет Всего: нет |
Можно по подробней как можно проконтролировать и не допустить повторного запуска child-формы
|
|||
|
||||
| arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: нет Всего: 61 |
||||
|
||||
| mal |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 28.5.2007 Репутация: нет Всего: нет |
Приведенный код только проверяет открыта ли child-форма. Я бы хотел создать процедуру, в которую передаем тип формы, а она уже либо открывает новую, либо активирует открытую.
|
|||
|
||||
| SpaceSpace |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 366 Регистрация: 10.4.2007 Где: Самара Репутация: 1 Всего: 10 |
Это сообщение отредактировал(а) SpaceSpace - 31.5.2007, 10:45 -------------------- Репутация - самое ценное, что есть у человека. Зарабатывают годы, теряют за мгновение. 70-565 MCPD Enterprise 3.5 |
|||
|
||||
| mal |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 28.5.2007 Репутация: нет Всего: нет |
Спасибо за помощь.
На сколько я понял из кода, не получилось создать универсальную процедуру для вызова новой child-формы или активации открытой. В моём проекте предполагается у основной формы порядка 20 дочерних. |
|||
|
||||
| arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: нет Всего: 61 |
mal, помоему решение как раз универсальное.
|
|||
|
||||
| mal |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 28.5.2007 Репутация: нет Всего: нет |
arilou, Ваше решение - универсальное, но оно может только определить открыта ли child-форма. А я бы хотел открыть или активировать child-форму.
Не универсальное - это я на счет решения SpaceSpace Или я чего-то не до понимаю? |
|||
|
||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 1 Всего: 48 |
в чём же проявляется его не универсальность? как по мне, так там единственное чего не хватает так это вызова Form.Activate, в случае того, если форма уже существует, и то, может быть, вполне и без него можно обойтись. -------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| mal |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 46 Регистрация: 28.5.2007 Репутация: нет Всего: нет |
Что за Form2? Как быть если у меня 20 child-форм? |
||||
|
|||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 5 Всего: 186 |
Список дочерних форм (только что написал).
Это сообщение отредактировал(а) Exception - 31.5.2007, 18:33 |
|||
|
||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 1 Всего: 48 |
не думал, что тебя это напугает. можно сделать так:
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| Exception |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 4525 Регистрация: 26.12.2004 Репутация: 5 Всего: 186 |
ИМХО, мой способ лучше, т.к. он типизированный и поддерживает создание формы по требованию и последующее хранение в кэше.
|
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |