Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.10.2008, 11:24   #1
Dennikid
Пользователь
 
Регистрация: 29.09.2008
Сообщений: 39
По умолчанию сортировка файлов в Filelistbox

как сделать сортировку файлов в виде:
1.txt
2.txt
3.txt
4.txt
5.txt
6.txt
7.txt
8.txt
9.txt
10.txt
11.txt
12.txt

а то у меня получается:
1.txt
10.txt
11.txt
12.txt
2.txt
3.txt
4.txt
5.txt
6.txt
7.txt
8.txt
9.txt
Dennikid вне форума Ответить с цитированием
Старый 02.10.2008, 11:27   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Ну если по возростанию числа, только числа. То почему бы их не переводить в число ( использовать val ) и если ошибка равна 0 то сравниваем < > =... а если ошибка не ноль то ставим там или в начала или в конец, зависит от систуации...
BOBAH13 вне форума Ответить с цитированием
Старый 02.10.2008, 11:39   #3
Dennikid
Пользователь
 
Регистрация: 29.09.2008
Сообщений: 39
По умолчанию

а если файл будет текст с числом, типа свет1.txt ? тогда как? или придется переименовывать файлы?
Dennikid вне форума Ответить с цитированием
Старый 02.10.2008, 11:44   #4
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Ну тогда строим алгоритм свой... ну основе быстрой сортировки. Ничего сложного по сути. Алгоритм быстрый сортировки присутствует в сети в различных формах. Делаем функцию где два параметра текст в ней и делаем проверку наших данных ну там что 2 < 10 и т.п. И Возращаем -1, 0, 1... а в самой сортировке проверяем полученный значения и соответственно ставим строку куда надо.
BOBAH13 вне форума Ответить с цитированием
Старый 02.10.2008, 12:23   #5
Dennikid
Пользователь
 
Регистрация: 29.09.2008
Сообщений: 39
По умолчанию

а какими командами он сортирует в FileListBox'e? случаем не знаешь?
Dennikid вне форума Ответить с цитированием
Старый 02.10.2008, 17:14   #6
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,183
По умолчанию

простой способ для этого:
Код:
procedure TForm1.Button2Click(Sender: TObject);
var I,II,J :Integer;
    Buf1,Buf2 :String;
 Function GetVal(S :String):Integer;
 begin
  Result := StrToIntDef(Copy(S, 1, Pos('.', S)-1), -1);
 end;
begin //Сортировка
  II := FileListBox1.Items.Count;
 If II>0 then
 For I:=0 To II-1 Do
 For J:=I+1 To II-1 Do
 begin
   Buf1 := FileListBox1.Items.Strings[I];
   Buf2 := FileListBox1.Items.Strings[J];
  If GetVal(Buf2)<GetVal(Buf1) then
  begin
   FileListBox1.Items.Strings[I] := Buf2;
   FileListBox1.Items.Strings[J] := Buf1;
  end;
 end;
end;
Alter вне форума Ответить с цитированием
Старый 02.10.2008, 17:36   #7
Dennikid
Пользователь
 
Регистрация: 29.09.2008
Сообщений: 39
По умолчанию

спасибо, пригодилось.
Dennikid вне форума Ответить с цитированием
Старый 18.05.2009, 17:12   #8
Рашид
Новичок
Джуниор
 
Регистрация: 09.06.2008
Сообщений: 1
По умолчанию

Большое спасибо!!!
Рашид вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка файлов russian-stalker Общие вопросы Delphi 4 25.09.2008 22:52
Нужна помощь: выбор файлов исходя из имени файлов Antik163RUS Помощь студентам 4 19.06.2008 21:20
Печать pdf файлов из списка файлов в Excel АПС Microsoft Office Excel 5 15.04.2008 16:04
Проблема с FileListBox-ом WhoThenNow Компоненты Delphi 1 26.08.2007 20:58
Вопрос о FileListBox Cezar Компоненты Delphi 6 30.03.2007 16:12