| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Сортировка |
| Автор: VOX 24.2.2009, 13:33 | ||
| Здравствуйте! Вот ссылка на мой проект
Значит делаю сортировку, а сортирует вот так: 1 10 11 12 13 14 15 16 17 18 19 2 20 22 23 24 26 27 28 29 3 30 31 32 33 34 35 37 38 39 4 40 41 42 43 44 45 46 47 48 49 5 50 51 52 53 54 55 56 57 58 59 6 60 61 62 63 64 65 66 67 68 69 7 70 71 72 73 74 8 9 ---------------------------------------- Подскажите как реализовать человеческую сортировку. Спасибо! |
| Автор: Soah 24.2.2009, 13:39 |
может код покажите вы что сравниваете строки? |
| Автор: Dmi3ev 24.2.2009, 13:43 | ||||
я покажу))) скачал архив, вот что там VOX написал:
|
| Автор: VOX 24.2.2009, 13:50 |
| аммм.... Ну там часики вставил ))) а вообще речь идет о ListBox1 ---------------------------------------------- Вот там и сортирует как то неправильно |
| Автор: VOX 24.2.2009, 13:53 | ||||
| Если вы про это: --------------------------------------------------------
Добавлено через 12 минут и 29 секунд в общем попробывал, выдало ряд ошибок:
|
| Автор: Soah 24.2.2009, 14:08 |
| VOX, может код покажешь, именно сортировку. Ты же не хочешь чтобы я дал тебе ссылку на страницу с 100 миллиардов сток, и сказал посмотри, ответ там есть. Цени наше и своё время. |
| Автор: VOX 24.2.2009, 14:17 | ||
| Я понял, прошу прощения! вот кодес:
--------------------- |
| Автор: Soah 24.2.2009, 14:47 | ||
|
| Автор: VOX 24.2.2009, 15:08 | ||
| Странно, но при клике на кнопку - никакой реакции :( Добавлено через 2 минуты и 38 секунд
вот сам проект (ваш кодес в конце) закрепил за 10 кнопкой |
| Автор: Soah 24.2.2009, 15:19 | ||
зачем тебе это, замени на З.Ы. http://forum.vingrad.ru/forum/topic-149290.html З.З.Ы какие числа вводишь ? upd Если нужно добавлять в сортировочном варианте, тогда можно так
|
| Автор: VOX 24.2.2009, 15:39 | ||||
| вот эти числа -----------------------
Добавлено через 6 минут и 27 секунд Первый код:
----------------------- вот он прекрасно работает! Спасибо! вот только как сортед = 1; повлиял? я его снес, но он ведь за кнопкой закреплен, до ее нажатие код не действителен, т.е. никак не влияет на ход программы... |
| Автор: Soah 24.2.2009, 15:54 |
прочитай в справке что означает свойство Sorted, чтобы ListBox сортировался не обязательно нажимать на кнопку, достаточно присвоить свойству Soorted значение true один раз. |
| Автор: Dmi3ev 24.2.2009, 16:17 | ||||
конечно тут будет ошибка, AnsiString надо в char конвертнуть с помощью .c_str(); а так можно придумать много чего, хотя бы даже вот так:
хоть так делай... |
| Автор: VOX 25.2.2009, 09:14 |
| Я всё понял, спасибо, работает! |
| Автор: YanTsys 26.2.2009, 11:25 | ||||
Не проще pList->Strings[pI1].ToInt() или pList->Strings[pI1].ToIntDef(0) ? |
| Автор: Dmi3ev 26.2.2009, 11:36 |
| YanTsys, да, да, да... просто указал автору на ошибку в этом коде и предложил свой вариант, которого еще не было))) а я бы так и сделал, как ты говоришь))) |