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

Вниз

Menu out of range   Найти похожие ветки 

 
Peroon   (2002-11-26 22:29) [0]

Пишу цикл удаления всех пунктов меню кроме двух последних. Делаю вот так

for i:=0 to MainForm.PopupMenu1.Items.Count-3 do

MainForm.PopupMenu1.Items.Delete(i);


но Delphi мне постоянно выдает Menu out of range. В чем дело?


 
asmith   (2002-11-26 22:35) [1]

Здесь буквально вчера задавали точно такой же вопрос об удалении строк из списка. Items у любого меню - также список, так что все ранее сказанное справедливо и тут. Опять наступаем на те же самые грабли!


 
oomneeq ©   (2002-11-26 22:40) [2]

C каждым делете реальный каунт уменьшается и поэтому i в конце твоего цикла оказывается больше, чем осталось айтемов в списке
делай либо обратный цикл - даунту либо так:

while MainForm.PopupMenu1.Items.Count>2 do
MainForm.PopupMenu1.Items.Delete(0);

ну и книжки почитывай :)


 
Peroon   (2002-11-26 22:47) [3]

Блин!!! Точно, каунт тоже ведь уменьшается!

Спасибо :))) Это все невнимательность! :))



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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
1-14553
Chris
2002-11-27 00:42
2002.12.05
работа приложения


1-14661
Lola
2002-11-25 10:06
2002.12.05
Проверка орфографии в TМемо.


7-14840
kofman
2002-10-05 20:40
2002.12.05
Как определить часовой пояс?


4-14881
Igor_thief
2002-10-20 18:57
2002.12.05
ProgressBar и StatusBar


6-14718
neodiX
2002-10-04 11:44
2002.12.05
Socket & Thread, не могу понять в чем проблема