Programa com LAG(Access + Imagens + IDBImage)

Delphi

01/09/2010

Ola, eu estava usando o ClientDataSet para colocar as imagens do meu programa primeiramente mas como cada imagem tava sendo multiplicada por 10X para ser gravada o arquivo .cds estava ficando com 500MB com apenas 20 fotos de 2MB cada.O programa ficava meio lagado quando exibia as imagens também, principalmente mostradas no DBCtrlGrid. Pesquisei e depois de ler alguns comentarios(que não tinham nada a ver com o que eu queria) vi que no DBImage quando queremos exibir uma JPEG a imagem é convertida para .BMP antes, ou seja, as imagens de 2MB JPEG em BMP aumentavam 5x de tamanho e depois dobravam de novo quando iam pro BD(.cds).Achei a solução pra não presisar converter os .JPEG pra .BMP no IDBImage, instalei e aproveitando o embalo troquei as imagens pro Access usando o ADO em vez do ClientDataSet e alterei os codigos de inserir e alterar imagens, que ficaram bem mais simples com o IDBImage.As imagens continuam aumentando de tamanho, mas pelo menos agora so 2x ao invez de 10x ja que são armazenadas sem conversão pra .bmp .O problema é que colocando apenas 3 imagens no BD(Access) o programa ficou MUITO lagado quando aparece alguma imagem, quando tem o DBCtrlGrid então é 5s de lag pra todo botão que clico, aonde não tem imagens fica normal.
Alguem sabe o porque disso e uma possivel solução? 
Artur Carlos

Artur Carlos

Curtidas 0
POSTAR