![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Cargar imágenes desde archivo en ImageList
Tengo el siguiente código que funciona bien con archivos .bmp pero no con los .jpg, me gustaría que alguien me ayudara:
Código:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
String dir = "C:";
if (SelectDirectory("Elige carpeta:","",dir)) {
FileListBox1->Directory = dir;
FileListBox1->ItemIndex = 0;
for (int i = 0; i < FileListBox1->Count; i++) {
lis->Add(FileListBox1->FileName);
FileListBox1->ItemIndex++;
}
if (lis->Count>0) {
Graphics::TBitmap* resBmp;
TJPEGImage *ImagenJpg = new TJPEGImage();
TListItem *Item;
String extension;
for (int i = 0; i < lis->Count; i++) {
extension = ExtractFileExt(lis->Strings[i]);
if ((extension.UpperCase()==".JPG")||(extension.UpperCase()==".JPEG")){
ImagenJpg->LoadFromFile(lis->Strings[i]);
resBmp->Height = ImageList1->Height;
resBmp->Width = ImageList1->Width;
ImageList1->Masked = false;
ImagenJpg->DIBNeeded();
resBmp->Assign(ImagenJpg);
ImageList1->Add(resBmp,NULL);
Item = ListView1->Items->Add();
Item->Caption = ExtractFileName(lis->Strings[i]);
Item->ImageIndex = i;
}
else {
if (extension.UpperCase()==".BMP") {
resBmp = new Graphics::TBitmap();
resBmp->Height = ImageList1->Height;
resBmp->Width = ImageList1->Width;
ImageList1->Masked = false;
resBmp->LoadFromFile(lis->Strings[i]);
ImageList1->Add(resBmp,NULL);
Item = ListView1->Items->Add();
Item->Caption = ExtractFileName(lis->Strings[i]);
Item->ImageIndex = i;
}
}
}
}
else {
ShowMessage("No hay archivos válidos en el directorio.");
}
}
}
|
|
#2
|
||||
|
||||
|
Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración
![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#3
|
||||
|
||||
|
Hola vankul.
De este modo me funciona correctamente: Código:
#include <jpeg.hpp>
void __fastcall TForm1::FormCreate(TObject *Sender)
{
FileListBox1->Directory = "C:\\Prueba\\Imagenes";
FileListBox1->Mask = "*.BMP;*.JPG;*.JPEG";
ListView1->SmallImages = ImageList1;
ListView1->ViewStyle = vsSmallIcon;
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
for (int i = 0; i < FileListBox1->Items->Count; i++) {
TJPEGImage *JPG = new TJPEGImage();
Graphics::TBitmap *BM = new Graphics::TBitmap;
TRect R;
AnsiString filename = FileListBox1->Directory + "\\" +
FileListBox1->Items->Strings[i];
AnsiString name = ExtractFileName(filename);
AnsiString ext = ExtractFileExt(filename).UpperCase();
R.Left = 0;
R.Top = 0;
R.Right = ImageList1->Width;
R.Bottom = ImageList1->Height;
BM->Width = ImageList1->Width;
BM->Height = ImageList1->Height;
try {
if (ext == ".JPG" || ext == ".JPEG") {
JPG->LoadFromFile(filename);
BM->Assign(JPG);
BM->Canvas->StretchDraw(R, BM);
ImageList1->Add(BM, NULL);
}
if (ext == ".BMP") {
BM->LoadFromFile(filename);
ImageList1->Add(BM, NULL);
}
ListView1->Items->Add();
ListView1->Items->Item[ListView1->Items->Count-1]->Caption = name;
ListView1->Items->Item[ListView1->Items->Count-1]->ImageIndex = i;
}
catch(...) {
MessageBox(Handle,
((AnsiString)("Error leyendo imágen: "+filename)).c_str(),
"ERROR",
MB_ICONERROR);
}
delete JPG;
delete BM;
}
}
![]() Edito: vankul, cambié el título original "Una ayudita" por uno mas significativo para facilitar las búsquedas.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 04-12-2013 a las 17:55:51. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Cargar Imagenes desde un zip a un timage. | javier9090 | Varios | 3 | 19-03-2012 18:20:55 |
| Cargar un Imagelist desde una dll | Fita | Gráficos | 0 | 30-04-2007 02:13:07 |
| Cargar imágenes desde JAVA en MySQL | david.rguez | JAVA | 1 | 14-02-2007 13:36:19 |
| Cargar imágenes desde un imagelist | johncook | Varios | 1 | 06-12-2004 13:44:15 |
| cargar imagenes desde un fichero | docarrillo | Varios | 2 | 12-07-2003 17:02:46 |
|