Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
 Аватар для Альма
13 / 10 / 4
Регистрация: 25.11.2010
Сообщений: 358
Записей в блоге: 1

Variable 'Bitmap' might not have been initialized

10.01.2013, 01:07. Показов 1817. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно вывести картинку из BLOB поля в DBImage. Картинки в формате bmp
Использую следующий код
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
var
Bitmap: TBitmap;
BS: TBlobStream;
begin
try
BS:= TBlobStream.Create(TBlobField(DM.HLook.FieldByName('Ôîòî')), bmRead);
BS.Seek(82, soFromBeginning);
Bitmap:= TBitmap.Create;
Bitmap.LoadFromStream(BS);
DBImage1.Picture.Graphic:= Bitmap;
finally
Bitmap.Free;
BS.Free;
Но выдает ошибки
[Warning] Main.pas(222): Variable 'Bitmap' might not have been initialized
[Warning] Main.pas(223): Variable 'BS' might not have been initialized
Не понимаю, где что еще инициализировать нужно?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.01.2013, 01:07
Ответы с готовыми решениями:

[Warning] Unit1.pas(276): Variable 'CoDoc' might not have been initialized
var CoDoc: CoDOMDocument; XMLP, XMLD: DOMDocument; p, d: IXMLDOMElement; PNode, DNode: ...

The variable 'x' is being used without being initialized
Доброго времени суток. Ничего не пойму почему вылазит эта ошибка? : #include <iostream> int main() { double x,y,a; ...

The variable 'c' is being used without being initialized
#include "stdafx.h" #include <stdio.h> #include <math.h> #include <conio.h> int main(int argc, char *argv) { ...

12
1085 / 571 / 79
Регистрация: 07.04.2011
Сообщений: 971
Записей в блоге: 2
10.01.2013, 01:48
Это не ошибки, а предупреждения. По возможности их следует избегать, но не всегда получается...
Так должно исчезнуть
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
var
Bitmap: TBitmap;
BS: TBlobStream;
begin
 BS:= TBlobStream.Create(TBlobField(DM.HLook.FieldByName('Фото')), bmRead);
 Bitmap:= TBitmap.Create;
try
 BS.Seek(82, soFromBeginning);
 Bitmap.LoadFromStream(BS);
 DBImage1.Picture.Graphic:= Bitmap;
finally
 Bitmap.Free;
 BS.Free;
0
 Аватар для Альма
13 / 10 / 4
Регистрация: 25.11.2010
Сообщений: 358
Записей в блоге: 1
10.01.2013, 01:53  [ТС]
antikiler_, пробовала так, выдает кучу окон с ошибками.
Может что не так с изображениями? Сохраняла как 24-разрядный bmp, вроде должно работать.
Миниатюры
Variable 'Bitmap' might not have been initialized   Variable 'Bitmap' might not have been initialized   Variable 'Bitmap' might not have been initialized  

Variable 'Bitmap' might not have been initialized  
0
1085 / 571 / 79
Регистрация: 07.04.2011
Сообщений: 971
Записей в блоге: 2
10.01.2013, 01:59
Высылай проект
0
 Аватар для Альма
13 / 10 / 4
Регистрация: 25.11.2010
Сообщений: 358
Записей в блоге: 1
10.01.2013, 02:08  [ТС]
Он дофига весит из-за картинок..Не загрузится сюда. Подправила, последние две ошибки ушли.
0
1085 / 571 / 79
Регистрация: 07.04.2011
Сообщений: 971
Записей в блоге: 2
10.01.2013, 02:14
Ну тогда отправь на какой нибуть файлообменник.
0
 Аватар для Альма
13 / 10 / 4
Регистрация: 25.11.2010
Сообщений: 358
Записей в блоге: 1
10.01.2013, 02:29  [ТС]
Уже. Грузит.

Добавлено через 14 минут
http://files.mail.ru/VJQ5ZO
0
1085 / 571 / 79
Регистрация: 07.04.2011
Сообщений: 971
Записей в блоге: 2
10.01.2013, 04:24
перейдешь поссылке
https://docs.google.com/open?i... mFuRy1CaG8
нажмешь скачать

Перезакачал твои изображения в базу, перезапустил там все, с горем пополам запустилось все... Там кнопку загрузки изображений сделал в приложении, посмотришь удалишь. Будут вопросы задавай, но завтра ...
1
 Аватар для Альма
13 / 10 / 4
Регистрация: 25.11.2010
Сообщений: 358
Записей в блоге: 1
10.01.2013, 04:40  [ТС]
antikiler_, спасибо большое!!! Со всем разобралась!!!
0
Эксперт Pascal/Delphi
 Аватар для droider
4888 / 2822 / 865
Регистрация: 04.10.2012
Сообщений: 10,264
10.01.2013, 13:18
Альма, а если картинка будет не в bmp формате, что тогда? Лучше сразу грузить jpeg

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
uses jpeg;
     
    procedure TForm1.Button1Click(Sender: TObject);
    var
      jpeg: TJPEGImage;
      bmp: TBitmap;
    begin
      if  PictureDialog1.Execute then
      begin
        jpeg := TJPEGImage.Create;
        bmp := TBitmap.Create;
        try
          jpeg.LoadFromFile(PictureDialog1.FileName);
          bmp.Assign(jpeg);
          ADOTable1.Edit;                  // режим редактирования
          ADOTable1.FieldByName('Фото').Assign(bmp);//загрузка фото
          ADOTable1.Post;                  // сохраняем данные
        finally
          jpeg.Free;
          bmp.Free;
        end;
      end;
    end;
1
1085 / 571 / 79
Регистрация: 07.04.2011
Сообщений: 971
Записей в блоге: 2
10.01.2013, 20:18
а если картинка будет не в bmp формате, что тогда?
Ну все... выкинуть программу... Неделя бессонных ночей псу под .... простите... тиграм под хвост.... Если бы Я был начинающим, то наверняка бы подумал, что можно любое изображение переконвертировать в любом графическом редакторе, что Я подозреваю так и сделали...
Лучше сразу грузить jpeg
А если картинка будет не в jpg формате, а в png? А в gif? А в ico? А в tif? А все в перемешку? что тогда?
Тогда можно воспользоваться моей первой рекомендацией или так...
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
procedure TForm1.Button2Click(Sender: TObject);
var
  bmp        : TBitmap;
  Source     : TImage;
begin
  if OpenPictureDialog1.Execute then
  try
   begin
      bmp := TBitmap.Create;
 
      Source := TImage.Create(nil);
      Source.Picture.LoadFromFile(OpenPictureDialog1.FileName);
 
      bmp.Width := Source.Picture.Width;
      bmp.Height := Source.Picture.Height;
      bmp.Canvas.Draw(0, 0, Source.Picture.Graphic);
 
       ADOTable1.Edit;                  // режим редактирования
       ADOTable1.FieldByName('Фото').Assign(bmp);//загрузка фото
       ADOTable1.Post;      
 
    end;
  finally
  FreeAndNil(bmp);
  FreeAndNil(Source);
  end;
end;
Ну и соответсвенно подключить модуля
Delphi
1
uses jpeg, pngimage, GIFImg;
0
Эксперт Pascal/Delphi
 Аватар для droider
4888 / 2822 / 865
Регистрация: 04.10.2012
Сообщений: 10,264
10.01.2013, 21:26
antikiler_, зачем выкидывать? Я лишь привел пример.

Добавлено через 2 минуты
Конвертировать каждый раз другой программой?
0
1085 / 571 / 79
Регистрация: 07.04.2011
Сообщений: 971
Записей в блоге: 2
10.01.2013, 21:34
Цитата Сообщение от droider Посмотреть сообщение
Я лишь привел пример
Да я та понял...Я бы уже описал бы в программе это, но не хотел нагружать ТС лишней информацией. Для начало ТС должна сосредоточится на основной части программы,реализовать ее, а уж затем заниматся её модернизацией. Во всяком случае, Я всегда так поступаю...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.01.2013, 21:34
Помогаю со студенческими работами здесь

The variable 'x' is being used without being initialized
x,k,y,n - c этой ошибкой, почему?) я вроде все значения объявил, ввожу клавы, а потом провожу действия. Проверил так: Ввел просто 1...

The variable is being used without being initialized
В данном коде на 44 строчке выходит ошибка Run-Time Check Failure #3 - The variable 'Value' is being used without being initialized. ...

Variable 'X' might not have been initialized
Добрый день. Помогите пожалуйста с программой. Дан одномерный массив Yk. Удалить все элементы с дробной частью. Заменить все элементы...

The variable 'pp' is being used without being initialized
В visual C++ 2008 EE создаю всё как надо ,в файле .cpp пишу вот такой текст программы: #include<iostream> ...

Variable might not have been initialized
Подскажите, пожалуйста, почему у меня ругается int a; try{for(a=1;a<10000;a*=10)if(new TestSum(a,false,true).failedtests.size()!=0)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru