Сообщество программистов Autodesk в СНГ

ADN Club => Inventor API => Тема начата: fedor от 07-10-2019, 10:27:36

Название: Открытие формы методом ShowDialog в Addin'ах
Отправлено: fedor от 07-10-2019, 10:27:36
Доброго времени суток!
Вопрос не связан напрямую с инвентором, но возможно здесь с подобным уже сталкивались.
В Addin'e, имеется форма(Form1), вызываемая методом Form1.ShowDialog. Т.е., пока открыта эта форма, все инструменты инвентора не доступны для пользователя.
В данной форме, есть кнопка, которая вызывает другую форму(Form2), таким же методом (Form2.ShowDialog). Т.е., в момент открытия Form2, две формы в Addin открыты методом ShowDialog!
При закрытии второй формы, вместе с ней закрывается и первая, "родительская" форма.
Как сделать так, чтобы при закрытии второй формы, вместе с ней не закрывалась и первая?
PS
Приложение, корректно работает, если Form1 открывать методом Form1.Show, но это не то что нужно и хотелось бы, чтобы инвентор был недоступен пока открыта форма
Название: Re: Открытие формы методом ShowDialog в Addin'ах
Отправлено: Александр Ривилис от 07-10-2019, 10:35:43
Как сделать так, чтобы при закрытии второй формы, вместе с ней не закрывалась и первая?
Только если ты при закрытии второй формы закрываешь первую форму такое может быть.
Название: Re: Открытие формы методом ShowDialog в Addin'ах
Отправлено: fedor от 07-10-2019, 11:51:07
Цитировать
Только если ты при закрытии второй формы закрываешь первую форму такое может быть
Попробую еще разок!
* В Addine нажимаю кнопку.
* методом ShowDialog открывается Form1
* В Form1, нажимаю кнопку, вызываю методом ShowDialog Form2
* Закрываю Form2(!)
~~~и тут внимательно, чтобы 2 раза не повторять!~~~
ВМЕСТЕ С Form2 ЗАКРЫВАЕТСЯ Form1. При закрытии Form2, нигде в коде программы нет команды для закрытия Form1 и уж тем более, пользователь не закрывает его вручную

Сталкивались ли с таким багом при написании Addin под инвентор?
Название: Re: Открытие формы методом ShowDialog в Addin'ах
Отправлено: Александр Ривилис от 07-10-2019, 11:53:21
Выкладывай код. Не вижу смысла гадать на кофейной гуще. Причем не отдельные куски, а весь zip-проект в архиве.
Ошибку нужно искать в методе обработки кнопки в Form1, которая вызывает Form2.
Название: Re: Открытие формы методом ShowDialog в Addin'ах
Отправлено: Александр Ривилис от 07-10-2019, 14:15:13
Вот пример вызова формы из формы:



Тестовый проект (обычное Windows-приложение) в zip-архиве вложил.