Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.04.24;
Скачать: [xml.tar.bz2];

Вниз

Как из БД InterBase 6.x картинку затолкать в TImageList?   Найти похожие ветки 

 
Z_man7777   (2003-04-04 08:32) [0]

В принципе весь вопрос. Всем заранее спасибо!!!


 
Reindeer Moss Eater   (2003-04-04 08:46) [1]

ImageList1.Add(Картинка_из_БД_Interbase_в_виде_TBitMap,Маска_в_виде_TBitMap);


 
Z_man7777   (2003-04-04 09:04) [2]

!Reindeer Moss Eater!
Если можешь, то приведи пример, так нагляднее будет. Буду очень признателен!!!


 
Reindeer Moss Eater   (2003-04-04 09:13) [3]

ImageList1.Add(....

Это не пример????


 
Z_man7777   (2003-04-04 09:20) [4]

!Reindeer Moss Eater!
Я имею в виде, распиши вот это - "Картинка_из_БД_Interbase_в_виде_TBitMap"
Как оно выглядеть будет в коде?


 
Reindeer Moss Eater   (2003-04-04 09:24) [5]

Я исходил из того, что если ты спрашиваешь, как затолкнуть картинку, то картинка у тебя уже есть.

Как получить картинку из поля БД?
Каждая операция записи имеет свою пару - операцию чтения.
Действуй так же как и при записи картинки, но в обратном порядке.


 
Z_man7777   (2003-04-04 09:39) [6]

!Reindeer Moss Eater!
Короче, я уже сделал, но сделал с сохранением на винт:

procedure TFFlatsFound.GetSmaylesFromDB(ImageList: TImageList; cbImage: TComboBoxEx);
var
Bitmap: TBitmap;
MemStream: TMemoryStream;
Item: TComboExItem;
begin
cbImage.Items.Clear;
ImageList.Clear;
QRab.Active:=False;
QRab.SQL.Text:="select * from smayles";
QRab.Active:=True;
Bitmap:=TBitmap.Create;
MemStream:=TMemoryStream.Create;
try
while not QRab.EOF do
begin
MemStream.Clear;
Bitmap.FreeImage;
TBlobField(QRab.Fields[1]).SaveToStream(MemStream);
MkDir("c:\Temp");
MemStream.SaveToFile("c:\temp\"+QRab.Fields[0].AsString+".bmp");
Bitmap.LoadFromFile("c:\temp\"+QRab.Fields[0].AsString+".bmp");
ImageList.Add(Bitmap,Bitmap);
Item:=cbImage.ItemsEx.Add;
Item.Caption:=QRab.Fields[0].AsString;
Item.ImageIndex:=QRab.Fields[0].AsInteger-1;
DeleteFile("c:\temp\"+QRab.Fields[0].AsString+".bmp");
QRab.Next;
end;
finally
MemStream.Free;
Bitmap.Free;
end;
end;

А хотелось бы обойтись без сохраниения на винт, то есть с помощью:
...
Bitmap.LoadFromStream(MemStream);
...
Но выходит ошибка: "Invalid image size"
Что мне нужно сделать?


 
Reindeer Moss Eater   (2003-04-04 09:41) [7]

Круто.
Ты в курсе что есть TBitmap.LoadFromStream???


 
Reindeer Moss Eater   (2003-04-04 09:42) [8]

Я про твое сохранение на диск.


 
Z_man7777   (2003-04-04 09:50) [9]

Так что мне сделать нужно, чтобы не выходило такой ошибки и все работало бы нормально?



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

Форум: "Базы";
Текущий архив: 2003.04.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.012 c
6-77069
chum
2003-03-01 19:51
2003.04.24
Работа с HTTP средствами WinApi


14-77164
alxn
2003-04-08 11:41
2003.04.24
Кто знает, куда пропал DelphiPlus?


4-77216
afalic
2003-02-26 13:49
2003.04.24
Сетевые сообщения


3-76765
Aleksandr
2003-04-08 15:05
2003.04.24
Есть ли альтернативные способы сброса таблицы MSSQL в Paradox?


3-76789
Weare
2003-04-04 13:34
2003.04.24
Сохранение всех изменений в таблице и их отмена.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский