Jump to content

Recommended Posts

Posted

Посмотрел ваши видео о FGX , вывел излишний функционал в другие формы, но как я понял, в Project - > Options - > forms они не отображаются, следовательно создаются вместе с основной формой при запуске. Не является ли это утечкой памяти в будущем и как я понял, необходимые действия надо делать при onShow, либо при запуске проекта уничтожать все формы кроме главной и создавать экземпляры по необходимости ? Можете дать развернутый ответ, так как сложно это осознать вот так вот сразу ))).  

Posted (edited)

@Аскар Джакишев

Удалите в файле проекта (*.dpr) строки вида 

Application.CreateForm

(кроме главной, конечно) и далее распоряжайтесь Вашими вторичными формами из главной.

Edited by dervish00
  • Like 1
  • Agree 2
  • Administrators
Posted
On 2/13/2024 at 5:37 PM, Аскар Джакишев said:

как я понял, в Project - > Options - > forms они не отображаются, следовательно создаются вместе с основной формой при запуске.

Да. Среда, к сожалению, не дает нам возможности как-то включить этот функционал. Поэтому формы не отображаются в настройках проекта.

On 2/13/2024 at 5:37 PM, Аскар Джакишев said:

следовательно создаются вместе с основной формой при запуске.

Вы можете руками удалить автоматическое создание форм, которые вас не интересуют. Либо добавить создание нужных форм.

On 2/13/2024 at 5:37 PM, Аскар Джакишев said:

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

Утечка памяти, это когда вы выделили эту память по какому-то указателю, а после использования ее не вернули в кучу. В данном случае, вы создали формы. И вы ими можете пользоваться сколько угодно раз. Это не является утечкой памяти. 

Вы можете реализовать автоматическое удаление формы при ее закрытии. Для этого можно воспользоваться свойство TfgForm.DefaultCloseAction = Free или событие OnClose вернуть значение Free для аргумента AAсtion. В этом случае, форма при закрытии автоматически будет удалена. Если вы не используете этот подход, то вы должны удалить форму тогда, когда вам нужно.

  • Like 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...