Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.07.2013, 11:19   #1
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
Вопрос Cannot change Visible in OnShow OnHide????

Вобщем если кидаю
Код:
Form2.Show;
на одно из событий Form1 (OnCreate, OnShow) то выскакивает эта ошибка: Cannot change Visible in OnShow OnHide????. Как решить эту проблему? Спасибо.
FleXik вне форума Ответить с цитированием
Старый 14.07.2013, 11:47   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

перевести сообщение об ошибке и сделать вывод.
кстати в онкрит должно поидее работать.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 14.07.2013, 12:12   #3
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

в OnCreate та же ошибка, и какой же вывод сделать если не работает ни там ни там?
FleXik вне форума Ответить с цитированием
Старый 14.07.2013, 12:25   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А вторая форма уже создана? Ты это проверь.
Если главная у тебя Form1, ты в ее создании пытаешься вызвать вторую форму, которую приложение создавать собирается только после первой то не удивительно что ниче не получается.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.07.2013, 12:33   #5
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Код:
 Application.CreateForm(TForm4, Form4);
 Application.CreateForm(TForm1, Form1);
 Application.Run;
-----------------

Вобщем убрал
Код:
Application.CreateForm(TForm4, Form4);
из project1.~dpr, и прописал в OnCreate Form1, помогло!!! работает!!! Stilet, спасибо!

Последний раз редактировалось FleXik; 14.07.2013 в 12:36.
FleXik вне форума Ответить с цитированием
Старый 14.07.2013, 13:53   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
работает!!!
Ну да. Это один из вариантов возможных.
Хотя я пожалуй предпочитаю другие методы, но иногда и это использую.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.07.2013, 16:16   #7
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
в OnCreate та же ошибка, и какой же вывод сделать если не работает ни там ни там?
OnShow - возникает ПЕРЕД показом окна. Событие OnShow вызывается методом Show, ShowModal от TForm. Потому и нельзя т.к. это бесконечный цикл.


Тоже самое с OnHide и OnCreate.
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Реакция из компонента на OnShow формы... GydruS Компоненты Delphi 2 28.07.2011 10:56
Как в своем компоненте подключиться к событиям формы (OnShow, OnHide) Stas1 Компоненты Delphi 4 27.01.2009 13:28
Событие OnShow формы Antoha Общие вопросы Delphi 4 12.02.2008 21:13
SplashForm.OnShow:=[] Volkogriz Общие вопросы Delphi 2 08.12.2007 16:58