Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
5 / 5 / 0
Регистрация: 14.10.2010
Сообщений: 210

Удаляется ли TComboBox при закрытии формы, на которой он отображается?

01.07.2011, 05:30. Показов 1401. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
у меня есть функция, которая создает TComboBox один на все приложения и помещает его на активную форму
удаляется ли TComboBox при закрытии дочерней формы, если TComboBox находится на ней?

C++
1
2
3
4
5
if(!ComboBox){//ComboBox -глобальная переменная 
ComboBox=new TComboBox(Application);
}
 
ComboBox=(TDBGridEh *)Form->ActiveControl;
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.07.2011, 05:30
Ответы с готовыми решениями:

При закрытии главной формы - процесс не удаляется
Потребовалось ввести дополнительный интерфейс в программе, в котором часть окон не показывается. Возникла проблема - при закрытии...

Как выполнить код в закрытии формы при ее принудительном закрытии?
Привет всем) Суть вопроса такова: есть форма, и при её закрытии нужно выполнить код. Если закрывать форму на крестик или...

Не получается при закрытии формы 2 изменить текст label формы 1
Форма 1: private void Btn_Open_Form2_Click(object sender, EventArgs e) { Form2 forma2 = new Form2(); ...

5
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
01.07.2011, 06:16
Удаление динамически созданных объектов
или std::auto_ptr;
C++
1
2
3
#include <memory>
...
std::auto_ptr<TStringList> list(new TStringList);
Метод можно применять, если в дальнейшем объект не предполагается использовать за пределами данного обработчика.
В данном случае нет необходимости вызывать delete list;
Auto Ptr , Умный указатель
0
5 / 5 / 0
Регистрация: 14.10.2010
Сообщений: 210
01.07.2011, 06:28  [ТС]
нет он при закрытии дочерней формы, TComboBox должен оставаться верно?
Но при дальнейшем его использовании выдает ошибку
C++
1
2
3
4
5
if(!ComboBox){//ComboBox -глобальная переменная 
ComboBox=new TComboBox(Application);
}
 
ComboBox->Parent=Form->ActiveControl;
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
01.07.2011, 06:37
если я правильно понял из вашего скудного описания, у вас где-нибудь в самом главном .срр есть что-нибудь типа TComboBox *ComboBox; , которое вы используете много разных в разных местах и разными естественными способами . В таком случае, удаляйте/обнуляйте его при закрытии приложения, помня, что все созданное new должно быть delete .
И что вы хотите сказать этим:
C++
1
if(!ComboBox){//ComboBox -глобальная переменная
?
И называть свои левые компоненты именами стандартных компонентов - не гламурно, по крайней мере...
1
5 / 5 / 0
Регистрация: 14.10.2010
Сообщений: 210
01.07.2011, 10:23  [ТС]
если я правильно понял из вашего скудного описания, у вас где-нибудь в самом главном .срр есть что-нибудь типа TComboBox *ComboBox; , которое вы используете много разных в разных местах и разными естественными способами .
Да все верно
В таком случае, удаляйте/обнуляйте его при закрытии приложения.
При закрытии приложения нет необходимости удалять мой глобальный компонент т.к. он сам удалится

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

И называть свои левые компоненты именами стандартных компонентов - не гламурно, по крайней мере...
Это здесь так написано чтобы вам понятнее было


C++
1
if(!ComboBox)
а это означает что ComboBox только один
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
01.07.2011, 16:12
Цитата Сообщение от php_vasia Посмотреть сообщение
Но при закрытии дочерней формы на которой находится мой компонент, дальнейшее его использование не возможно
естественно, поскольку он разрушается вместе с формой, для использования в новом месте его необходимо заново создать. Если вам необходимо в дальнейшем использовать данные из этого комбобокса, что, мо-моему, вы и хотите, но боиьесь спросить, то, до закрытия доч.формы, строки из бокса можно занести в глобальный символьный массив, и пользовать в дальнейшем, наприсер, создав новый комбобокс где нибудь в другом месте, и заполнив его строками из того комбобокса.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.07.2011, 16:12
Помогаю со студенческими работами здесь

Завершение программы при закрытии формы только по команде пользователя, а не по закрытию формы кодом
В общем , когда программа открывается срабатывает событие OnShow() и открывается другая форма Form4-&gt;ShowModal(). В этой форме...

Не отображается содержимое компонентов TComboBox и TListBox
В одном проекте не отображается содержимое Items при запуске приложения. Просто пустой компонент. Если ItemIndex установить 2, то...

Переменная, значение которой сохраняется при закрытии программы
Как создать переменную, которая сохраняла бы свое, измененное в ходе работы программы, значение? т.е. чтобы при последующем запуске...

Событие при закрытии формы
Доброго времени суток. Есть две формы: основная и вторичная, первая знает о второй. Нужно создать событие при закрытии второй формы (нужно...

пролема при закрытии формы
есть форма в приложении, в ней можно поменять пароль. из этой формы при нажатии кнопки открывается другая форма, а эту нуно закрыть. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru