|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Отображается форма при загрузке из файла
При загрузке формы из файла она отображается на экране. Хотя, вызова Config.Show нет, почему так? Как сделать, чтобы она грузилась в фоне и не отображалась?
Код:
Config:=TConfigForm.Create(nil); Config.DestroyComponents; FStr:= TFileStream.Create(fname, fmOpenRead); MemStr:= TMemoryStream.Create; ObjectTextToBinary(FStr, MemStr); MemStr.Position:= 0; MemStr.ReadComponent(Config); MemStr.Free; FStr.Free; |
#2
|
||||
|
||||
Код:
procedure TConfigForm.FormCreate(Sender: TObject); begin Application.OnMinimize:= AppMinimize; Application.OnRestore := AppMinimize; Application.Minimize; AppMinimize(@Self); end; procedure TConfigForm.AppMinimize(Sender: TObject); begin ShowWindow(Application.Handle, SW_HIDE); end; Помогаю платно. Помогаю иногда бесплатно. |
#3
|
|||
|
|||
P.S.: Забыл добавить, что форма, которая грузится из файла не является основной. Основная - показывается при старте и это нормально, но я создаю вторую форму и не хочу чтобы она показывалась пока что. А показаться она должна, когда я ее вызову.
Вторая форма создается в событии Form1.Create - при создании первой формы. Событие можно выбрать и другое, лишь бы она была готова сразу после запуска приложения. |
#4
|
|||
|
|||
а в dpr'e она не создается случайно?
|
#5
|
|||
|
|||
Не создается, я оттуда ее убирал.
Я даже делал массив форм: если несколько форм загружаю то все появляются. |
#6
|
|||
|
|||
Даже если приведенный код загрузки формы из файла вставить в событие кнопки, то после нажатия кроме создания формы она еще и отобразится.
|
#7
|
|||
|
|||
Есть что в OnCreate Этой формы?
|
#8
|
|||
|
|||
Цитата:
Нет, там пусто. Попробуйте у себя сделать кнопку и загрузить форму из кода. Интересно, может это баг в IDE (Delphi 10.2)... Или так и задумано. |
#9
|
||||
|
||||
Цитата:
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
Этот пользователь сказал Спасибо Alegun за это полезное сообщение: | ||
Dredfil (05.05.2018)
|
#10
|
|||
|
|||
Цитата:
Наконец, разобрался. Дело в том, что форма сохранялась в событии onClose, в этом событии она все еще видна, поэтому при загрузке из файла тянется и состояние видимости. Я прям перед сохранением устанавливаю у формы Visible:=false и порядок ^^ Спасибо! |