Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Anatoliy
Зарегистрирован: 15.04.2002 Сообщения: 681 Откуда: Moscow
|
Добавлено: Сб Май 18 2002 10:02 Заголовок сообщения: Помогите написать код на С++В |
|
|
Нужно загрузить в ListView все файлы из указанной папки. Файлы начинаються с имени "mtk010102.rar" mtk - увсех, дальше разное. как это сделать? Прошу, не отсылайте к хелпам. |
|
Вернуться к началу |
|
![](templates/subSilver/images/spacer.gif) |
Adil Гость
|
Добавлено: Пн Май 20 2002 12:51 Заголовок сообщения: Re: Помогите написать код на С++В |
|
|
int IconIndex=-1; //инициализация списков имаджев void __fastcall TForm1::CreateImageList() { if(!ListView1->LargeImages) {//честно говоря так и не удосужился проверить необходимость этого if ListView1->LargeImages=new TImageList(ListView1); ListView1->SmallImages=new TImageList(ListView1); ListView1->StateImages=new TImageList(ListView1); } else { ListView1->LargeImages->Clear(); ListView1->SmallImages->Clear(); ListView1->StateImages->Clear(); } TIcon* ic=new TIcon; //здесь поставь реальное имя иконы // или грузи из ресурса ic->LoadFromFile("E:\\TMP\\gluck.ico"); IconIndex=ListView1->LargeImages->AddIcon(ic); ListView1->SmallImages->AddIcon(ic); ListView1->StateImages->AddIcon(ic); } //тобавление файла в листвью void __fastcall TForm1::AddNewFile(AnsiString& NewFile) { if(IconIndex==-1) CreateImageList(); if(NewFile.IsEmpty() || !FileExists(NewFile)) return; TListItem *li = ListView1->Items->Add(); li->Caption = ExtractFileName(NewFile);//это видимый заголовок li->ImageIndex=IconIndex;//номер имаджа в списках имаджев char* path=new char[NewFile.Length()+1]; strcpy(path,NewFile.c_str()); li->Data=(void*)path; //здесь храниться полный путь к файлу } //добавление папки в листвью void __fastcall TForm1::AddFiles(AnsiString& Dir) { TSearchRec sr; int iAttributes = faReadOnly|faHidden|faSysFile|faArchive|faAnyFile; AnsiString aDir=Dir+"\\mtk*.rar"; if (FindFirst(aDir, iAttributes, sr) == 0) { do { if ((sr.Attr & iAttributes) == sr.Attr) AddNewFile(sr.Name); } while (FindNext(sr) == 0); FindClose(sr); } } Можно еще всяких разных наворотов добавить.
Удачи. |
|
Вернуться к началу |
|
![](templates/subSilver/images/spacer.gif) |
|