![]() |
|
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]()
|
|
| Pcrepair |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Добрый день. Есть процедура,которая сортирует пару KEY--VALUE(слово--число) по значению VALUE и передает результат в ValueListEditor, для просмотра
Но сортировка идет немного не так как нужно, в частности: рпрпропопр--99 пиропиррор--87 прррпррппр--33 титититьит--223 рпрпрпрпрр--12 хотя строка титититьит--223 в ValueListEditor должна быть наверху так как 223 больше чем 99 Вопрос: где ошибка и как поправить? --------------------
Сборник рабочего кода Процедур и Функций DelPhi http://validcoderepo.narod.ru/ |
|||
|
||||
| БелАмор |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 10.6.2010 Где: Россия Репутация: 7 Всего: 17 |
В данном случае сравнивать нужно не как строки, а переводить строки в числа и сравнивать уже их.
Вы невнимательно смотрели в прошлом вопросе по этой теме: http://forum.vingrad.ru/forum/topic-372348...y2584577/0.html
DefVal - значение, принимаемое для строк, которые не удаётся перевести в Integer. Задавая очень большое или очень малое число, можно группировать, например, пустые строки в начале или в конце списка. |
|||
|
||||
| Pcrepair |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Спасибо, будем пробовать
--------------------
Сборник рабочего кода Процедур и Функций DelPhi http://validcoderepo.narod.ru/ |
|||
|
||||
| Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 9 Всего: 133 |
Где-то на форуме был код Вита, по которому вычислялась длинна самого большого числа и все строки, короче этой длинны забивались нулями в начале. Получалось сравнение строк 099, 087, 033, 223, 012. Такие строки отсортируются как числа.
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
| Pcrepair |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
правильный ответ
там еще дробные числа нужно обрабатывать Это сообщение отредактировал(а) Pcrepair - 14.11.2013, 08:48 --------------------
Сборник рабочего кода Процедур и Функций DelPhi http://validcoderepo.narod.ru/ |
|||
|
||||
| Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 9 Всего: 133 |
Pcrepair, очень приятно будет наблюдать ошибки конвертации при передаче в List текстовых строк.
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
| Pcrepair |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
это исключено на предыдущем этапе
--------------------
Сборник рабочего кода Процедур и Функций DelPhi http://validcoderepo.narod.ru/ |
|||
|
||||
| БелАмор |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 10.6.2010 Где: Россия Репутация: 7 Всего: 17 |
Поспешное утверждение. Конкретная ситуация на вскидку: После заполнения ValueListEditor (или даже во время заполнения) пользователь лезет в панель управления, от скуки играется с региональными настройками, и меняет десятичный разделитель. Как отреагирует ваш код? Вы хотя бы предусмотрели запрет автоматического обновления региональных настроек внутри программы при изменении их в системе? |
|||
|
||||
| Pcrepair |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 209 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
никуда никакой пользователь не лезет. оператор нажимает на Ф3, это фсе. остальное делает прграмма, автоматически
жаль пока нельзя оператора иллюминировать --------------------
Сборник рабочего кода Процедур и Функций DelPhi http://validcoderepo.narod.ru/ |
|||
|
||||
![]()
|
| Правила форума "Delphi: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |