|
Вопрос # 4 207/ вопрос открыт / |
|
Приветствую, уважаемые эксперты!
Нужна процедура занесения картинок в массив)
есть одна,но почему то при пошаговой проверке выдается что картинки так и не загрузились,массив заполнен нулями.
собственно вот она. Не могу понять в чем проблема, ошибки никакой не выдает,просто массив так и остается пустым.
С уважением.
Приложение: Переключить в обычный режим- Procedure LoadMas;
- var i,j:integer;
-
- begin
-
- for i:=0 to 4 do
- begin
-
- case i of
- 0:m:=m+'1';
- 1:m:=m+'2';
- 2:m:=m+'3';
- 3:m:=m+'4';
- 4:m:=m+'5';
- end;
-
- begin
-
-
- end;
- end;
- end;
 |
Вопрос задала: sambuka (статус: Посетитель)
Вопрос отправлен: 22 мая 2010, 14:02
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 11; последнее сообщение — 25 мая 2010, 15:16; участников в обсуждении: 5.
|
Dron (статус: Студент), 22 мая 2010, 14:06 [#1]:
Размерность задана как для одномерного, а картинки грузятся в двухмерный?
С уважением.
|
|
min@y™ (статус: Доктор наук), 22 мая 2010, 16:09 [#2]:
Меня всегда удивляло рвение народа создавать массивы (особенно двух- и более мерные) указателей на объекты. Ну ёмаё, ЗАЧЕМ?! Ну есть же классы, заточенные специально для этого!
З.Ы. Ещё меня добивает аццкое форматирование выкладываемых исходников. Читать невозможно.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Егор (статус: 10-ый класс), 23 мая 2010, 10:24 [#3]:
Цитата (sambuka):
case i of
0:m:=m+'1';
1:m:=m+'2';
2:m:=m+'3';
3:m:=m+'4';
4:m:=m+'5';
end;
обалдеть код. а почему же не через if...then? было бы ещё круче
здесь:
Цитата (sambuka):
SetLength(Mas,5); //выделяем место
выделяем место под ОДНОМЕРНЫЙ массив. а вот здесь:
Цитата (sambuka):
Mas[i,j]:=Tbitmap.Create;//создаем массив
Mas[i,j].LoadFromFile(m+IntToStr(j)+ '.bmp');//загружаем его в память
работаем с массивом как с двумерным...
остальное минай уже сказал
Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.
— Donald E. Knuth.
|
|
sambuka (статус: Посетитель), 23 мая 2010, 12:00 [#4]:
вот описание массива,описан глобально
Mas: array of array [0..9] of Tbitmap;
почему вы считаете что здесь
SetLength(Mas,5);
он одномерный?как исправить подскажите пож.
min@y™ что за классы есть? если вас не затруднит скажите подробнее. пишу курсовую,не во всем хорошо разбираюсь,но хочу понять. буду очень признательна за помощь.
|
|
min@y™ (статус: Доктор наук), 23 мая 2010, 12:05 [#5]:
Цитата (sambuka):
что за классы есть? если вас не затруднит скажите подробнее. пишу курсовую,не во всем хорошо разбираюсь,но хочу понять. буду очень признательна за помощь.
Есть стандартные классы, которыми я тебе рекомендую заменить свои массивы - TList и TObjectList.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
sambuka (статус: Посетитель), 23 мая 2010, 18:39 [#6]:
а как SetLength(Mas,5); поменять, чтоб двумерный то был?
|
|
IlluminatI (статус: 2-ой класс), 23 мая 2010, 19:21 [#7]:
SetLength(Mas,5,5);
только не забудь описать его как двумерный: var a: array of array of <тип>;
|
|
min@y™ (статус: Доктор наук), 23 мая 2010, 21:12 [#8]:
Да выкинь ты нахрен свои массивы и сделай, как я говорю. Не пожалеешь: геморроя будет гораздо меньше.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
sambuka (статус: Посетитель), 24 мая 2010, 13:38 [#9]:
Я не понимаю как с этими классами работать.
|
|
min@y™ (статус: Доктор наук), 24 мая 2010, 20:50 [#10]:
Цитата (sambuka):
Я не понимаю как с этими классами работать.
Есть такой секретный сайт, его никто не знает, но я тебе по секрету скажу.
Нажми сюда.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
sambuka (статус: Посетитель), 25 мая 2010, 15:16 [#11]:
ОСТРОУМЕН)
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|