Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.25;
Скачать: CL | DM;

Вниз

Удаление объекта из массива по OnClick   Найти похожие ветки 

 
Reset   (2004-04-10 01:06) [0]

Я создаю массив объектов и по щелчку мышкой на любом из них он должен удалятся. А в хелпнике написано, что TObject.Free по OnClick работать не будет. Подскажите как это можно обойти?


 
jack128 ©   (2004-04-10 01:14) [1]

Я так понимаю массив контролов?
Может работать, а может и нет.. Для гарантии пость (PostMessage) какому нить окну сообщение и в обработчике этого сообщения удаляй нужный контрол

Для примера см TCustomForm.Release;


 
Reset ©   (2004-04-10 01:21) [2]

Спасибо. А то курсач горит, совсем спать перестал :)


 
Геннадий ©   (2004-04-10 09:50) [3]

Тебе нужен динамический массив (заполняемый в момент создания формы), содержаций два поля на элемент: ссылку на контрол (TObject или TPersistent или ...) и признак удаления CanDel: Boolean

В событиии он клик контрола ищешь в массиве контрол и выставляешь CanDel = True

Тайме каждую секунду сканирует массив и удаляет нужные элементы (не забудь проверку if assigned())


 
SergP ©   (2004-04-10 10:59) [4]

>Тайме каждую секунду сканирует массив и удаляет нужные элементы

Извращение.... :-((((


 
Геннадий ©   (2004-04-10 12:50) [5]


SergP ©   (10.04.04 10:59) [4]
>Тайме каждую секунду сканирует массив и удаляет нужные элементы

Извращение.... :-((((



Хорошо. Пусть тогда в событии OnClick помимо CanDel:= True, будет ещё и запуск таймера.


 
jack128 ©   (2004-04-10 12:57) [6]


> Геннадий ©   (10.04.04 12:50) [5]
Ты не понял. Извращение использовать таймер, сли можно без него.  Вообще странно, что Release введен только для Формы, лудше б его ввели сразу для TWinControl"a.  

По этому поводу вспоминаются heaper"ы (если правильно написал) из D8



Страницы: 1 вся ветка

Текущий архив: 2004.04.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.028 c
1-1081170427
vv_fran
2004-04-05 17:07
2004.04.25
Почему дата 12/30/1899 - нулевая в Делфи?


14-1080555947
Ega23
2004-03-29 14:25
2004.04.25
У кого опыт driver development есть, помогите!


3-1080803624
dima74
2004-04-01 11:13
2004.04.25
Временные файлы


3-1080735679
Ivan
2004-03-31 16:21
2004.04.25
Доступ к базе с других ПК


14-1080832905
DeadMeat
2004-04-01 19:21
2004.04.25
VMWare и Win98