-
Постов
235 -
Зарегистрирован
-
Посещение
-
Победитель дней
9
Сообщения, опубликованные Камышев Александр
-
-
про ImeMode пишут в мануале:
For internal use only
Do not use this property. It is for internal use only.
-
ImeMode отправить в imDisable, ловить LongTap и врукопашную выделить сколько нужно SelStart и SelLength
-
логично
-
В теплом, ламповом CBuilder(Delphi) у CheckBox кроме Checked еще было поле State, которое при включенном AllowGrayed могло принимать значения cbUnchecked (не отмеченное), cbChecked (отмеченное ) и cbGrayed - третье состояние, неопределенное.
В FMX я этого не нашел, неужто совсем зарезали? Есть что-то похожее?
-
TCriticalSection кроссплатформенный, Enter(), Leave(), все как в CRITICAL_SECTION, только инициализировать не надо.
-
нету clock() в Delphi, сишный эксклюзив, только GetTickCount в TThread...
с другой стороны зачем такая точность, clock() возвращает тики процессора, тут достаточно системное время запросить
-
имхо, я бы на старте службы запустил цикл со Sleep(10) и проверял сколько прошло времени вот этим кодом:
class MyTimer { private: clock_t startTicks; double coef; public: MyTimer(){ coef = 1000.0f / CLOCKS_PER_SEC; } void Start() { startTicks = clock(); } float GetTimeSec(){ return ( clock() - startTicks ) * coef / 1000.0f; } float GetTimeMSec(){ return ( clock() - startTicks ) * coef; } };
работает на винде и андроид, что-то типа:
MyTimer Timer; Timer.Start(); while(true) { if ( flag_exit ) break; if ( Timer.GetTimeSec() < 15 ) { // что-то делаем в режиме ожидания Sleep(10); } // что-то делаем по таймеру Timer.Start(); }
код на си, но все функции есть в объект-паскале, думаю алгоритм понятен
хотя не факт что #include <time.h> есть в дельфи, а в билдере нет служб андроид, хаха
-
Есть надежные, быстрые библиотеки для шифрования на С, но похоже к Delphi их никак не включить в проект.
Казалось бы основное направление Rad Studio - объектный паскаль, однако же CBuilder принимает *.pas файлы, а Delphi сишные файлы игнорит.
Если собрать Static Library c библиотекой на С, наверное Delphi его поймет?
Попробовал... Delphi и lib не понимает... печаль
-
Владельцам galaxy tab нужно не письма отправлять, а огнестойкую коробку и перчатки, что бы сложить его туда и забетонировать от греха подальше
сори оффтоп
-
из известных blowfish и ГОСТ 28147-89, у меня библиотеки на сях, вот тут обсуждают реализацию blowfish на object pascal http://www.sql.ru/forum/1192261/ishodnik-blowfish-ne-poymu-kak-s-nim-rabotat
ГОСТ 28147-89 - алгоритм шифрования, принят к использованию в госструктурах, но это так, к слову
-
вот вот, на системе сигналов я и загрустил
-
-
В 08.08.2016 в 17:29, Kitty сказал:
Раз упомянули про С++, то расстраивает эта дорожная карта:
http://community.embarcadero.com/article/news/16418-product-roadmap-august-2016
Опять идет лесом С++ Builder в плане создания сервисов для Андроид.
3 минуты назад, Kitty сказал:Почему не хотят? В дорожной карте эмбаркадеро с С++ все нормально.
-
Сам пользуюсь cbuilder по привычке, ленюсь разбираться с новой IDE, там немного другой интерфейс в qt. У нас в конторе есть qt-шник, он хвалит.
Большой плюс - есть полноценная бесплатная некоммерческая версия, условно бесплатная.
-
33 минуты назад, Прикладной сказал:
Т.е. вы советуете переходить на Дельфийский ?
тогда уж соскакивать с rad studio на qt, если не хотят С++ поддерживать, там и линукс и андроид и библиотек куча
до сих пор builder используется больше из-за старых проектов и наработок
-
закрывается форма как обычно Form.Close(), если из потока TThread то нужен Synchronize,
если этот поток создавала Indy то на С это будет TIdNotify::NotifyMethod с хедером #include "IdSync.hpp"
-
внешний накопитель может быть защищен от записи, это будет ошибка да, еще при включенном режиме USB накопителя может не быть доступа
папка Documents была создана при вызове SaveToFile у TStringList, когда я пытался эмулировать Вашу ситуацию на своем планшете, до того ее не было
псс, а что еще живы программисты под DOS? столько не живут...
-
у меня на планшете есть SD, но GetSharedDocumentsPath указывает на папку Documents в корне somewhere inside internal storage
и да, пока хотя бы одно приложение не обратится по этому пути, папки такой не будет, она появляется после первого обращения, точнее первой записи
-
1 час назад, Юрий Гусач сказал:
в каталог Documents на внешнюю карту,
Путь к каталогу получаю функцией System.IOUtils.TPath.GetSharedDocumentsPath.
вот отсюда поподробней, почему GetSharedDocumentsPath указывает на внешнюю карту, это в настройках?
-
видимо особенности аппарата, в вопросе пишите сразу какое железо и можно сразу версию андроид
-
только что сохранил и в GetSharedDownloadsPath() и в GetSharedDocumentsPath(), и там и там все доступно для чтения из USB накопителя
и в описании разница небольшая:
Returns the path to the directory where user stores shared downloaded files.
Returns the path to the directory where documents shared between users are stored.
-
Пойдем простым логическим путем. Если файлы не видно - андроид не хочет их показывать, а чего бы ему их не показать, если не по причине прав доступа.
А зачем тебе жужжать если ты не пчела?
Попробуй в GetSharedDownloadsPath сохранить, там должно быть видно.
-
Если VCL там есть DBGrid, MyDataSource указать, все само отрисуется. В FMX по сути тоже должен быть способ, типа LiveBindings.
Можно рисовать в рукопашную
for ( int i = 0; i < fquery->RecordCount; i++ ) { // пройти по записям fquery->RecNo = i + 1; // получить массив данных TByteDynArray da = fquery->Fields->FieldByNumber(0)->AsBytes; // скопировать массив в Stream, // возможно есть другие способы скопировать TByteDynArray в TStream, я на вскидку скопировал побайтно TMemoryStream *ms = new TMemoryStream; ms->SetSize( da.Length ); // занять область под копирование char *ms_data = (char*)ms->Memory; // именованый указатель на область память for( int j = 0; j < da.Length; i++ ) char[i] = da[i]; // копирование побайтно в цикле TBitmap *b = new TBitmap; b->LoadFromStream( ms ); // здесь в битмап уже должно быть изображение delete ms; delete b; }
-
привет, вот здесь http://fire-monkey.ru/topic/1927-сглаживание-при-рисовании-в-буфер-bitmap/?do=findComment&comment=10081
я рисовал в буфер Bitmap и на OnPaint копировал на канву PaintBox с помощью Canvas->DrawBitmap. Все рисовалось и копировалось быстро без морганий, но так и не получилось сглаживать линии.
В конце концов стал рисовать напрямую в канву PaintBox - заработало сглаживание, никаких тормозов и морганий.
Основные требования: рисовать только в OnPaint, между BeginScene() и EndScene() и каждый раз полностью инициализировать все настройки канвы: Stroke, Kind, Dash Color и т.п.
[FireDAC][Phys][SQLite] ERROR:attempt to write a readonly
в SQLite
Опубликовано · Изменено пользователем Камышев Александр
Нет разрешения на редактирование файлов, где лежит файл базы? Можно попробовать поместить в общедоступные папки, documents, downloads.
Разрабы в Google закручивают гайки, не дают писать на флешки и внешние накопители, ибо нечего, покупайте устройства с бОльшим объемом памяти на борту - они дороже.