| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Глюки при создании приложения в XE5 |
| Автор: Vitus28 23.1.2015, 03:45 |
| Доброго времени суток! С давних пор писал на Delphi 6, но недавно был вынужден перейти на Rad Studio XE5. И столкнулся с некоторыми глюками (возможно это конечно не глюки, а я чего-то не знаю). Для демонстрации я собрал минимальный пример. В проекте есть 2 формы: Главная и диалог (допустим форма аутентификации). Первой создается главная форма и на обработчике OnCreate создается диалог, который появляется на экране (до появления Главной формы). Нажимаем на кнопку (Ok или Cancel), диалог закрывается и появляется Главная форма. Если такое приложение скомпилировать в Delphi 6, то всё замечательно работает и в Win XP и в Win 7. Но если это компилируется в XE5, то быть глюкам. Продолжать работу в Delphi 6 не вариант, так как используются компоненты, которые не поддерживают Delphi 6 (и доработать их, что бы они туда ставились и корректно работали, я не смог). Глюк 1. Запускаем приложение. Появляется модальная форма и в taskbar Win 7 появляется иконка приложения. Если по этой иконке кликнуть левой мышкой (что бы свернуть), то она свернется (пусть не с первого раза, но это уже глюк 2), а вот развернуть ее назад тем же способом не получится. Почему? Доп. к глюку 1. Вернуть окно назад можно через «Диспетчер задач» (по приложению правой мышкой, пункт меню «На передний план»). Ну или для это ситуации я написал костыль, если будет интересно, то выложу код и расскажу. Глюк 2. Запускаем приложение. Появляется модальная форма и в taskbar Win 7 появляется иконка приложения. Если по этой иконке кликнуть левой мышкой (что бы свернуть), но окно сворачивается не с первого раза (а со второго или третьего)! Почему? Доп. к глюку 2. Если нажать на одну из кнопок, то появится главная форма и в первый раз она тоже свернется не с первого раза. Почему? Этот глюк я закостылить не смог (пока). Знатоки, помогите. В чем я не прав? Или я чего-то не знаю про особенности программирования в XE? Заранее спасибо! |
| Автор: Illusion Dolphin 23.1.2015, 23:02 |
| Попробуйте вместо .Free делать .Release |
| Автор: Vitus28 24.1.2015, 02:53 |
Спасибо! Это позволяет победить Доп. глюк 2. Т.е. если использовать Release вместо Free, то главная форма сворачивается с первого раза |
| Автор: Vitus28 26.1.2015, 02:53 |
Хотя более детальные тесты показали, что это не особо помагает |