Я пытаюсь перенести DevExpress TdxDBGrid для приложений Unicode, и отсутствие нестандартного Unicode TStringList является единственным препятствием для завершения миграции. Я попытался использовать TAnsiStringList из JcLAnsiString (из проекта с открытым исходным кодом Jedi/Jcl), и, хотя он работает, он включает слишком много зависимостей от структуры Jedi/Jcl. Как правило, мой план заключается в использовании перенесенного TdxDBGrid для работы с данными Unicode, но TAnsiStringList требуется для внутренних действий - например, для хранения закладок, выбранных строк и т. Д.Ansi TStringList в Delphi XE для совместимости с Unicode
Является ли более легким не-Unicode TStringList (с меньшими зависимостями)?
Я не могу понять, что не так с 'TStringList'. Почему бы вам не использовать это? Помимо этого, если у вас есть настоящая необходимость, насколько сложно взять код из 'TStringList' и заменить' string' на 'AnsiString'? Конечно, вы справляетесь с этой задачей. –
Вы уверены, что если вы перенесите свое приложение в Unicode Delphi, то для 'TdxDBGrid' потребуется строковый список' AnsiString'? Я не знаю, почему бы его разработчики это сделали. IMHO ему нужен только абстрактный класс TStrings, а весь компонент - * Unicode ready * и использование строкового списка 'AnsiString' будет даже ошибочным. Но это всего лишь моя догадка (и надеюсь на хороший дизайн этого компонента). – TLama
Единственное приложение для версии ANSI 'TStrings' - это большой объем заведомо ANSI-текста, хранящегося в памяти. – OnTheFly