-
Постов
851 -
Зарегистрирован
-
Победитель дней
129
Весь контент Andrey Efimov
-
Приложение для создания файла ресурсов (RC, RES)
Andrey Efimov опубликовал тема в Сторонние компоненты
Появилась необходимость добавить большое количество картинок, но делать это стандартными средствами не очень удобно (почитать можно тут: Где хранить большое количество картинок?). Собственно, написал маленькую программку для создания файла RC и создания bat – файла, который позволяет генерировать RES файл. В свободное время буду допиливать. Как использовать: Указываете путь до папки с файлами, которые необходимо добавить в ресурсы. Указываете имя выходного файла, без расширения. Расширение (.rc) уже забито в коде. Выбираете тип ресурсов. Ставите необходимые галочки. Жмёте "Создать" Итоговые файлы будут лежать рядом с exe-файлом приложения. Обращаться к ресурсам можно по оригинальным именам или автоматически сгенерованным. Пример (оригинальные имена): Имя файла "FruitsVegetables_1.png". В готовом файле будет так: FruitsVegetables_1 ТИП ПУТЬ\FruitsVegetables_1.png Надеюсь, кому-нибудь пригодится. Версия 1.4: Скачать с Google Drive (версия 1.4). Новую версию можно скачать ниже, в последнем сообщении. -
Давайте в соседнюю тему перейдём Где хранить большое количество картинок?, чтобы не мусорить тут, т.к. здесь вопрос был о другом.
-
Допустим ситуацию: Имеем 164 картинки (может быть больше. Размер примерно 128х128), данные картинки нужно добавить в приложение перед компиляцией apk-файла. У всех картинок уже заданы разные имена, например по такой схеме: 10 картинок (фрукты) – имя = fruit_1..10 26 картинок (овощи) – имя = vegetables_1..26 и т.п. при добавлении в Rad Studio необходимо сохранить эти имена, чтобы потом можно было по ним обращаться к картинкам. В приложении, список имён хранится в ComboBox'е, также как и количество картинок для каждой категории. Я вижу четыре варианта хранения: StyleBook (минусы: неудобно добавлять по одной штуке, каждой картинке нужно присвоить имя) Хранить в ресурсах (плюсы: можно добавить сразу все картинки. Минусы: нужно задать каждой картинке имя) Задеплоить (главный минус: прописывать настройки (путь и т.п.) для каждого файла (Kikoma просветил меня, оказывается можно массово задавать конечный путь)) единственное что теперь смущает, так это куча файлов в окне для деплоя Хранить все картинке в zip-архиве (плюсы: один файл, извлечь архив можно в любой момент) Это пока экспериментальный вариант, к нему я склоняюсь больше всего. Смысл данного варианта заключается в том что я запихну все картинки в один архив, сам архив в приложение, и когда придёт время извлеку все картинки по нужному пути, т.е. деплой в рантайме Минусы: Размер приложения в конечном итоге, после извлечения архива будет чуток больше. Картинки у меня в png формате, к ним я применяю сжатие при помощи PNGGauntlet, чтобы уменьшить размер. У кого есть ещё какие-нибудь варианты? Суть вопроса заключается в том, чтобы найти максимально простой и наименее затратный по времени вариант добавления картинок. Чтобы не задавать новые имена, а использовать уже существующие, чтобы можно было в один клик добавить все картинки, чтобы можно было в один клик прописать путь (если нужно) для всех картинок.
-
Тоже коснулся этого вопроса. У меня картинок 164 штуки (может стать больше. размер примерно 128х128) и я вижу четыре варианта хранения: StyleBook (минусы: неудобно добавлять по одной штуке, каждой картинке нужно присвоить имя) Хранить в ресурсах (плюсы: можно добавить сразу все картинки. Минусы: нужно задать каждой картинке имя) Задеплоить (главный минус: прописывать настройки (путь и т.п.) для каждого файла) Хранить все картинке в zip-архиве (плюсы: один файл, извлечь архив можно в любой момент) Это пока экспериментальный вариант, к нему я склоняюсь больше всего.
-
По поводу первой ссылки: Там происходит обычное чтение файла и его парсинг. По поводу второй ссылки: Что именно не понятно? Пример использования есть в демках RAD Studio "C:\Users\Public\Documents\Embarcadero\Studio\14.0\Samples\Object Pascal\Mobile Snippets\DeviceInfo" По поводу третьей ссылки: Зачем вам это? RAD Studio не поддерживает Андроид ниже 2.3.3
-
Допустим ситуацию: Используем StyleBook для хранения картинок, одна картинка – один Image, StyleName у всех картинок разный. Необходимо посчитать/получить количество эти самых картинок.
-
Тоже заметил подобное поведение. Решение: прописать строку "FloatAnimation1.Inverse := false;" в OnFinish анимации Правильное решение ниже, дал Ярослав.
- 7 ответов
-
- TFloatAnimation
- StartValue
-
(и ещё 1 )
C тегом:
-
А что именно не понятно? Событие срабатывает каждый раз, когда вы вводите новый символ в поле Edit1 (Edit1.Text). Пишем цикл, в котором пробегаем по всем введённым символам и проверяем их на соответствие списку запрещённых символов. Если находим запрещённый символ, то сразу удаляем его из строки или можно ещё предупреждение выдать.
-
Честно говоря, я тоже не знаю, почему так происходит… Но могу подсказать временное решение: используем событие OnChangeTracking, проверяем последний введённый символ (или даже лучше сразу все символы проверять) и решаем, что с ним делать.
-
Может быть, вам попробовать использовать компонент TClearingEdit? Стиль, который вы пытаетесь использовать предназначен именно для этого компонента.
- 7 ответов
-
- TClearingEdit
- ClearingEditStyle
- (и ещё 7 )
-
По вашей личной просьбе обратил внимание на этот вопрос, но у меня Delphi XE6, т.е. проверить на XE5 просто нет возможности. Что необходимо знать: Компонент, который вы используете, является устаревшим, т.е. начиная с версии XE6 этого компонента нет в среде Что предлагают использовать вместо него – это компонент TDateEdit (Пример: Mobile Tutorial: Using a Calendar Component to Pick a Date (iOS and Android)) Я также попробовал использовать компонент TCalendar(Пример: FMX.DateTimeCtrls.TCalendar), и изменял в рантайме свойство, которое вы предложили, всё работает отлично. Выходы, которые вижу я: Найти человека с XE5 и попросить воспроизвести вашу ситуацию. Поставить более новую версию среды разработки и использовать новый компонент, который заменяет старый.
-
Стили лежат тут "C:\Users\Public\Documents\Embarcadero\Studio\14.0\Styles", там есть папки "Android", "iOS". Также все стандартные стили можно вытащить из "Bitmap Style Designer", как это сделать, читайте в разделе "Стили", например в теме "Где взять стандартный стиль в FireMonkey для iOS и Android, используемый по умолчанию?"
-
Для Андроид: можно воспользоваться классами для работы с "Wi-Fi", конкретно методом "getMacAddress". Полную обёртку для работы с Wi-Fi я уже написал, так что вам остаётся только подключить её (Пример и обёртка лежат тут: Android API: package "android.net.wifi" или обёртка для работы с Wi-Fi)
-
Спасибо.
-
Планируется ли научить этот класс работать с запароленными архивами?
-
Вам необходимо просто указать путь до базы и всё должно заработать. (Посмотрите примеры, на которые я дал вам ссылку и всё станет понятно) Пример для пути "assets\internal": procedure TForm1.FDConnection1BeforeConnect(Sender: TObject); begin {$IF DEFINED(iOS) or DEFINED(ANDROID)} FDConnection1.Params.Values['Database'] := TPath.Combine(TPath.GetDocumentsPath, 'shoplist.s3db'); {$ENDIF} end;
-
Не нашёл в вашем проекте подключения к БД через код. Советую ознакомиться с примерами в справке Accessing a Database