Я создаю простое приложение FMX в C ++ Builder (Токио 10.2.3), которое отображает данные повестки дня из базы данных SQLite.Я добавил TComboBox
, чтобы позволить пользователю фильтровать то, что представлено.В поле со списком во время выполнения добавляются следующие элементы (это названия комитетов):
Show PSSC
Show TD
Show RRMS
Я использую поле со списком, чтобы добавить фильтр к запросу SQL в базе данных.Набор данных имеет поле committee
, и каждая строка данных принадлежит одному из этих 3 комитетов (PSSC, TD, RRMS).
Ниже приведен мой код для добавления фильтра в запрос.Он отлично работает на 32-битной Windows, но не на iOS или Android.Все, что я делаю, это обрезаю "Show "
с .Delete
до UnicodeString mystring
.
mystring = Form1->cmbBoxFilters->Selected->Text;
mystring = mystring.Delete(1, 5);
query->SQL->Text = "SELECT * FROM mtgs WHERE weekday = '" + myday + "' AND committee = '" + mystring + "'";
Вот что происходит, в 32-битной Windows mystring
именно такдолжно быть.Если я выберу «Показать PSCC» в выпадающем списке, то mystring
закончится «PSCC», и запрос отлично работает.Но, когда я работаю на iOS или Android, mystring
заканчивается "SSCC".Первая буква из того, что выбрано, становится буквой S. Я не могу понять, почему.
Я пишу, потому что мне просто любопытно, как отображается эта буква "S".в моем исходном коде на iOS или Android, а не в 32-разрядной версии Win.
ps Просто используйте TFDConnection
, TFDQuery
и FDPhysSQLiteDriverLink
в моей форме Firemonkey.