Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2011.11.27;
Скачать: [xml.tar.bz2];

Вниз

Различие регистра букв в TCheckListBox   Найти похожие ветки 

 
Anthony ©   (2011-08-06 12:42) [0]

В конроле ListBox типа TCheckListBox находятся 2 слова: "земля" и "Земля".
ListBox.IndexOf("Земля") даёт значение 0.
ListBox.IndexOf(земля") тоже даёт значение 0.
Подскажите, как сделать, чтобы ListBox различал регистр?..


 
Anatoly Podgoretsky ©   (2011-08-06 18:09) [1]

Это как, по коду ничего этого не видно, а как добавлялись эти слова?


 
sniknik ©   (2011-08-06 23:59) [2]

var
 S: string;
 i: integer;
begin
 S:= "Земля";
 i:= SendMessage(ListBox.Handle, LB_FINDSTRINGEXACT, 0, LongInt(PChar(S)));
end;


 
Anthony ©   (2011-08-07 19:58) [3]

sniknik, ваш код с LB_FINDSTRINGEXACT работает абсолютно также, как и метод IndexOf.
Я написал функцию, где в цикле проверяется каждый элемент ListBox и сравнивается с искомой строкой. Несложно. Просто я думал, что у этого компонента есть какие-то свои родные нстройки насчёт различия регистра...
Спасибо всем, кто написал.


 
sniknik ©   (2011-08-07 22:05) [4]

> код с LB_FINDSTRINGEXACT
тут не главное, главное 0 после него, а так естественно также, ведь взято из функции IndexOf, и исправлено.
и еще есть вероятность, что в "верних" версиях дельфи с юникодом, требуется под них исправить.


 
Dimka Maslov ©   (2011-08-07 22:25) [5]

Замечу, что списки нумеруются с нуля и значение 0 говорит о том, что элемент найден и имеет индекс равный 0.


 
sniknik ©   (2011-08-07 22:30) [6]

именно. и при заданном условии должно найти первый... а говорит, что также работает, т.е. 0 нашел.

не совсем как нужно, но найдя, и сравнив если оно не точное повторяешь поиск с этого элемента до "полного удовлетворения".


 
Германн ©   (2011-08-08 00:26) [7]

Я вообще не понимаю для какой реальной программы/задачи нужно иметь в листбоксе одинаковые слова, но отличающиеся только регистром символов.


 
Kilkennycat ©   (2011-08-08 01:22) [8]

Ну, для какой-то надо... к примеру, база паролей. на самом деле, это все-таки правильно. никсы не зря делают различие.


 
Kilkennycat ©   (2011-08-08 01:23) [9]

я бы сбацал наследника и перекрыл нужные методы, это проще.


 
sniknik ©   (2011-08-08 09:40) [10]

> Ну, для какой-то надо... к примеру, база паролей.
тот логичнее был бы выбор (если его давать, перед логином), т.е. TComboBox, а не TCheckListBox. или он будет пытаться логинится по всем "чекнутым"? т.е. знаю пароль но не знаю от какого юзера поэтому отмечу все...

не, все-таки что-то странное реализуется.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2011.11.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
15-1312461790
Сергей М.
2011-08-04 16:43
2011.11.27
Теперь понятно почему Скайп иной раз изрядно поглючивает)


2-1312295124
Tim
2011-08-02 18:25
2011.11.27
ресурсы в длл


15-1311859760
Дмитрий С
2011-07-28 17:29
2011.11.27
threadvar


1-1271161706
Zoom
2010-04-13 16:28
2011.11.27
Загадка с Memo и TntMemo


2-1312129640
From4pda
2011-07-31 20:27
2011.11.27
выбор диска для копирования





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский