Текущий архив: 2004.04.04;
Скачать: CL | DM;
Вниз
Как программно создать и удалить combobox Найти похожие ветки
← →
IronWit © (2003-07-21 17:31) [0]привязанный к listview строго определенному.
Почему то когда я это делаю ручками, то после 2-3 трех созданий\удалений программа падает с ошибками 204 или 216. Что бы это значило?
Заранее спасибо.
← →
SPeller © (2003-07-22 03:51) [1]Ошибка в 17-й строке.
← →
IronWit © (2003-07-22 09:22) [2]2SPeller. :)
создание
if combobox<>nil then
begin
combobox:=NewComboBox( listview3, [] );
combobox.OnLeave:=ComboBox1Leave;
combobox.Width:=listview3.LVColWidth[0];
combobox.DeleteLines(0,combobox.count);
combobox.Add("");
combobox.Add("Rip");
for i:=0 to listview1.lvcount-1 do
begin
if length(listview1.LVItems[i,0])>0 then combobox.Add(listview1.LVItems[i,0]);
end;
if length(listview3.LVItems[listview3.curindex,0])>0 then combobox.Text:=listview3.LVItems[listview3.curindex,0];
combobox.show;
end;
Удаление
в процедурке
procedure TForm1.ComboBox1Leave(Sender: PObj);
begin
listview3.lvItems[cur,0]:=combobox.Text;
combobox.Destroy;
combobox:=nil;
end;
← →
savva © (2003-07-22 09:50) [3]я бы сделал
combobox.Free;
вместоcombobox.Destroy;
но это еще надо проверить:)
← →
ironwit © (2003-07-22 10:29) [4]работает :)
← →
SPeller © (2003-07-22 10:36) [5]А ещё у меня вызывает сомнение вот это кусок:
> if combobox<>nil then
> begin
> combobox:=NewComboBox( listview3, [] );
Может, всё-таки, в условии надо combobox = nil ? А то получается, что если комбобокс создан (не равен nil), то ты его создаёшь по-новой.
← →
Плохиш (2003-07-22 10:38) [6]А слабо посмотреть в справке, что Borland про Destroy пишет?
← →
savva © (2003-07-22 10:57) [7]> Плохиш (22.07.03 10:38)
> А слабо посмотреть в справке, что Borland про Destroy пишет?
Забудь про справку от Borland - это теперь не самое главное, так как там все про классы
← →
IronWit © (2003-07-23 08:56) [8]2SPeller
я вообще ту строку убрал. Так как у меня при выходе из combobox снала отрабатывает процедурка onleave - которая 100% убивает его.
← →
Dimaxx © (2003-07-25 23:57) [9]А зачем каждый раз создавать/удалять? Надо просто создать его один раз при создании формы, сделать невидимым, заполнить данными, установить на нужное место и отобразить. После выбора данных скрыть. Удалить при закрытии формы. Вот и все.
← →
IronWit © (2003-07-26 09:26) [10]Хотелось разобраться... :)
Страницы: 1 вся ветка
Текущий архив: 2004.04.04;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.027 c