vankul
03-12-2013, 22:27:16
Tengo el siguiente código que funciona bien con archivos .bmp pero no con los .jpg, me gustaría que alguien me ayudara:
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.");
}
}
}
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.");
}
}
}