Программное создание и удаление компонентов
TButton *pButton= new TButton(this);
pButton->Parent=Form1;
Далее возникает вопрос: как ее удалить из программы?
Благодарю за внимание.
delete pButton;
pButton->Visible=false;
А что какого нибудь pButton->Free() нету?
Посколько кнопка создавалась динамически, то ее ОБЯЗАТЕЛЬНО (что-бы не было утечек памяти)нужно удалять т.е delete
Жалко у меня Builder-а нету, сам посмотреть не могу. В Delphi все контролы создаются динамически, соответственно и память освобождать надо (ее вообще-то всегда освобождать надо , тока, славо богу, компилятор это тоже делать умеет). Другое дело, что деструкторы там написаны очень грамотно и при вызове его, он уничтожает и сам контрол и все контролы которые на нем лежат. Причем он удаляет их полностью: никаких картинок на родителе не остается. А если картинка остается, то что это? Это либо все-таки что-то осталось от этого контрола, либо что-то плохо с прорисовкой родителя. Вот мне и интересно, что же это такое.
>>Например, я создаю при нажатии на кнопку >>еще одну кнопку следующим кодом:
>>TButton *pButton= new TButton(this);
>>pButton->Parent=Form1;
Откуда все-таки вызывается этот код. Другими словами: на что указывает this?
Я имел ввиду, что возможно this не равно Form1.