Форум: "Начинающим";
Текущий архив: 2007.11.18;
Скачать: [xml.tar.bz2];
ВнизПочему не удаляется все объекты на форме? Найти похожие ветки
← →
qwert_leonid (2007-10-23 16:08) [0]Вот код, вернее кусочек.......
for U2 :=0 to ComponentCount - 1 do begin
if (Components[U2] is TEdit) then begin
ShowMessage ("Удалить");
TEdit(Components[U2]).Free; //На каком то этапе неудаляется... хотя если сделать TEdit(Components[U2]).Visible :=false, то абсолютно все компоненты невидны?? end; end;
for i :=0 to List.Count-1 do begin
with TEdit.Create(Self) do
begin
Top :=15 + koordinataXX;
Left :=10;
Caption := "CCO"+ " " +IntToStr (i);
Tag :=0+i;
Parent :=ScrollBox2;
koordinataXX :=koordinataXX + 30;
end;
end;
Как удалить все компоненты которые TEdit?
← →
homm © (2007-10-23 16:10) [1]> [0] qwert_leonid (23.10.07 16:08)
> TEdit(Components[U2]).Free;
Так не пробовал?(Components[U2] as TEdit).Free;
← →
Kolan © (2007-10-23 16:12) [2]TEdit(Components[U2]).Free;
За чем вообще привобить к TEdit? У TObject есть Free.
вроде все правильно…
Оформлять учись :(for U2 := 0 to ComponentCount — 1 do
begin
if Components[U2] is TEdit then
begin
ShowMessage ("Удалить");
Components[U2].Free; //На каком то этапе неудаляется… хотя если сделать TEdit(Components[U2]).Visible :=false, то абсолютно все компоненты невидны??
end;
end;
← →
Ega23 © (2007-10-23 16:13) [3]
for i :=0 to List.Count-1 do begin
with TEdit.Create(Self) do
begin
Top :=15 + koordinataXX;
Left :=10;
Caption := "CCO"+ " " +IntToStr (i);
Tag :=0+i;
Parent :=ScrollBox2;
koordinataXX :=koordinataXX + 30;
end;
end;
Как удалить все компоненты которые TEdit?
А что тут List?
← →
temp_and_test (2007-10-23 16:13) [4]Вот раз удалил, два удалил, три удалил, а четыре - Н Е У Д А Л И Л. С ошибкой вылетает List Index out of bounds (30)
← →
Palladin © (2007-10-23 16:14) [5]так понятное дело... смодулировать ситуацию такого подхода к удалению чего либо из какого либо списка - не судьба...
понимаешь... цикел у тебя до count, но в процессе удаления count сам по себе меняется... соответственно есть некий момент времени когда итерационная переменная выйдет за пределы этого самого реального count....
которые TEdit, да без проблемм
For i:=ComponentCount-1 Downto 0 Do
If (Components[i] is TEdit) Then Components[i].Free;
← →
Anatoly Podgoretsky © (2007-10-23 16:15) [6]И наверно AV возникает?
← →
qwert_leonid (2007-10-23 16:16) [7]Ega23
Как удалить все компоненты которые TEdit?
А что тут List?
List:=TStringList.Create;
List.LoadFromFile(CurrentDir+"\map\psi"+ IntToStr (TComponent(Sender).Tag));
List.Free;
← →
qwert_leonid (2007-10-23 16:19) [8]Palladin
Спасибо.For i:=ComponentCount-1 Downto 0 Do
If (Components[i] is TEdit) Then Components[i].Free;
А то я запутался совсем
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.11.18;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.044 c