C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
CLX & GDI Objects, Whereis my_memory7
BUBL1n
  Отправлено: 11.03.2005, 13:43


Ученик-кочегар

Группа: Участник
Сообщений: 10



Простинький пример по CLX:
На форме: BitBtn1->Kind=bkAll;
CODE
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
TForm1 *f = new TForm1(this);
f->Parent=this;
f->Show();
delete f;
}

Смотрим в TaskManager на GDI Objects и что? GDI всьо больше и больше. Что делать? Кто чем может, помогите пожалуйста.
Bond
Отправлено: 11.03.2005, 14:01


Станционный диспетчер

Группа: Участник
Сообщений: 142



а если так сделать?
CODE
...
Application->CreateForm(__classid(TForm1), &f);
f->ShowModal();
f->Free();
AVC
Отправлено: 11.03.2005, 14:15


Ветеран

Группа: Модератор
Сообщений: 1583



А у меня так
CODE

TForm1 *f = new TForm1(Application);
//f->Show(); // устаканивается через 3-4 клика

f->ShowModal();
// память захватывается, но обратно не отдается
// (по крайней мере за 10 мин)
// но используется повторно
delete f;


Отредактировано AVC — 11/03/2005, 13:16
BUBL1n
Отправлено: 11.03.2005, 20:50


Ученик-кочегар

Группа: Участник
Сообщений: 10



Как я понимаю.. то далеко в сорсах CLX проблемы з TImageList (или что-то- того) Память уходит только тогда когда есть какие-то рисоночки, тапа на БытБатонах, Гридах (Стрелка текущего рекорда), итд. Если самому рисовать на TCanvas и руками перересовывать постоянно — то всьо ОК. В сорсах CLX вроди всьо удаляеца а.... толку не видать.

Вернуться в Вопросы программирования в C++Builder