Вопрос № 52067: Здравствуйте, товарищи эксперты!
Почему функция CheckListBox1.Items.Add('Привет мир!') возвращает -1, а должна возвращать индекс новой строки, которую я добавил?
Система: Delphi 7+ SP1....Вопрос № 52133: Такой вопрос. Создаю тип. : type
Tinfo = record
Fam : string[15];
Name : string[15];
Otch : string[15];
Date: String[10];
City: string[15];
Street: String[20];
Dom: string[5];
kv: string[5];
tel_home...
Вопрос № 52.067
Здравствуйте, товарищи эксперты!
Почему функция CheckListBox1.Items.Add('Привет мир!') возвращает -1, а должна возвращать индекс новой строки, которую я добавил?
Отвечает: Ерёмин Андрей
Здравствуйте, Подболотов Иван Алексеевич!
Вероятно, это ошибка где-то у вас в программе. Код, который в приложении, правильно выдаёт числа - сначала 0, затем 1, 2 и т.д. Возможно, у вас перекрывается какое-либо из событий этого компонента. Кроме того, у вас особенная версия Delphi - там это может быть. Я тестировал на D7. Что за версия "7+" - не знаю. Попробуйте поэкспериментировать аналогичным образом над ListBox, ComboBox - если "ошибка" проявляется везде - значит со стандартными компонентами что-то не так. Увы, других предположений
нет...
Приложение:
--------- Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессор) Россия, Тула WWW:Программирование на DELPHI: Всё для программиста. ICQ: 286837644 ---- Ответ отправлен: 14.08.2006, 10:52 Оценка за ответ: 5 Комментарий оценки: Будем тестировать. Я хотел написать Delphi 7 с Пакетом обновления 1. Не так выразился. Спасибо!
После этого работаю с типизированным файлом. В приложении. Фото гружу из DbImage. Вроде код исполняется... но размер выходного файла все равно меньше, чем даже сама картинка. Пробую извлекать эту картинку так: procedure TForm1.Button1Click(Sender: TObject);
Var F : file of TInfo;
t:TInfo;
begin
AssignFile(f,'C:info.bti');
Reset(F);
try
while not Eof(F) do begin
Read (F, t);
Выдает ошибку, как бы обращение к несуществующей памяти. Могу предположить, что картинки там и не загрузилось. Причем вся текстовая инфа читается от туда. Вот, что есть по данной проблеме. Если, что, ожет кто0нить предложит другой способо экспорта-импорта инфы из БД для ручной синхронизации.
Приложение:
Отправлен: 14.08.2006, 22:13
Вопрос задал: CJ (статус: Практикант)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 15)
Отвечает: sir henry
Здравствуйте, CJ!
Особенно меня порадовало в Вашем типе TDbImage. :)
Вызывает большое сомнение его нужность там. По-моему вполне можно обойтись и TImage.
Теперь по поводу главной ошибки. Вы наверное не знаете, а может и забыли второпях, что любые объекты в Дельфи динамические, т.е. это указатель с размером в 4 байта. И если Вы записываете в типизированый файл что-либо из переменных типа Вашего TDBImage, то Вы записываете не сам объект, а именно указатель, т.е. 4 байта и не более того.
Когда Вы пытаетесь загрузить Вашу картинку, то в t.Photo у Вас записан адрес памяти, по которому ничего нет. В прошлый раз картинка там может быть и была, но ведь Вы же программу в памяти не держите постоянно, так ведь?
Ответ отправил: sir henry (статус: Академик) Россия, Красноярск ---- Ответ отправлен: 15.08.2006, 05:41 Оценка за ответ: 5