Вниз
Скачать: CL | DM;

Ошибка в FormShow   Найти похожие ветки 

← →
Marat ©   (2005-01-19 07:33) [0]

Здравствуйте, мастера. В событии FormShow я прописываю
Form1.Position:=poScreenCenter;
При первой загрузке все проходит нормально. А вот если я закрываю форму и открываю ее снова, то выдается ошибка: Project raised exception class EInvalidOperation with message "Cannot change Visible in OnShow or OnHide". Process stoped. Use Step or Run to continue. Что делать?


← →
Kerk ©   (2005-01-19 07:38) [1]

Marat ©   (19.01.05 7:33)
Form1.Position:=poScreenCenter;

видимо FormShow вызывается ДО того как форма показана.


← →
Marat ©   (2005-01-19 07:41) [2]

А как такое может быть?


← →
Antonn ©   (2005-01-19 07:57) [3]


> А как такое может быть?

???? Не понял, в чем проблема. Наверно сначала устанавливаются параметры а только потом они используются...


← →
Marat ©   (2005-01-19 08:02) [4]

Проблема вообще такая. При создании формы свойство Position автоматически выставлено poScreenCenter. При первой загрузке так и выходит. Но после закрытия формы и вторичного ее открытия форма почему-то отпрыгивает влево и вверх, но не в самый угол экрана. Поэтому я попытался в событии FormShow прописать Form1.Position:=poScreenCenter;
и попал в вышеуказанную ошибку.


← →
^!^   (2005-01-19 08:14) [5]

Да че уж там... пиши тогда уж в OnShow типа:


 Left := (Screen.Width - Width) div 2;
 Top := (Screen.Height - Height) div 2;


← →
KSergey ©   (2005-01-19 08:18) [6]

>  [4] Marat ©   (19.01.05 08:02)
> Проблема вообще такая. При создании формы свойство Position
> автоматически выставлено poScreenCenter. При первой загрузке
> так и выходит. Но после закрытия формы и вторичного ее открытия
> форма почему-то отпрыгивает влево и вверх, но не в самый
> угол экрана.

Ищите где в коде ее "отпрыгивают"
Сама по себе форма никуда никогда не прыгает
Ну разве что пользователь ее утянул - но опять же не сама, верно?


← →
Marat ©   (2005-01-19 08:26) [7]

Понятно дело искал. На вид эта форма ничем не отличается от остальных, но вот есть в ней эта особенность. Может быть при закрытии формы чего-нибудь не дозакрывается?


← →
Marat ©   (2005-01-19 08:31) [8]

Все. Нашел в чем собака порыта. Спасибо всем!!!


← →
Antonn ©   (2005-01-19 08:33) [9]


> Нашел в чем собака порыта.

Ну объявил-бы, а то заитриговал и свалил :)


← →
Erik1 ©   (2005-01-19 11:32) [10]

Самое главное Form1.Position:=poScreenCenter; Form1 - убрать!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.029 c
8-1098346166
Ricko
2004-10-21 12:09
2005.01.30
Как перенаправить сигнал со входа звуковой карты на выход?


1-1106226580
Tomkat
2005-01-20 16:09
2005.01.30
Список параметров из INI файла


3-1103788640
juice
2004-12-23 10:57
2005.01.30
Пустое поле


14-1105606082
kaZaNoVa
2005-01-13 11:48
2005.01.30
RLINK32: Too many resources to handle. что делать?


1-1105639172
Fin
2005-01-13 20:59
2005.01.30
Showmessage???




   Наверх