Почему не работает SameText? - PullRequest
0 голосов
/ 26 июля 2011

Почему

if SameText(ListBox1.Items[i],Edit1.Text)=true then

не работает?Он чувствителен к регистру (строки имеют разные регистры), но не должен.Строки в юникоде.Работает, если в строках одинаковые регистры.

1 Ответ

10 голосов
/ 26 июля 2011

Согласно SysUtils.pas (Delphi-XE), SameText "имеет те же 8-битные ограничения, что и CompareText " и в CompareText "операция сравнения основана на 8-битном порядковом значении каждого символа после преобразования 'a' .. 'z' в 'A' .. 'Z', и не зависит от текущей локали пользователя. "

Похоже, вы пытаетесь сравнить некоторые символы, находящиеся за пределами 8-битного диапазона.

Редактировать: попробуйте AnsiSameText.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...