-
Постов
255 -
Зарегистрирован
-
Посещение
-
Победитель дней
13
Сообщения, опубликованные FREEFAR
-
-
13 часов назад, krapotkin сказал:
все-таки вернусь к логической загадке ARC
1. если вы все ссылки на объект обнулили, то вызывать его деструктор не требуется, его вызовут за вас
2. если не все обнулили, но вызвали деструктор, значит имеем нехилую вероятность того, что кто-то, у кого осталась ссылка, обратится по ней к объекту. тогда мы имеем гарантированный AV
3. Тогда зачем все эти варианты с DisposeOF ???
У меня вся программа на фреймах построена, и ничего, создаются удаляются. При этом отлаживаюсь я в Win64, а потом запускаю на Andoird. И все работает штатно в обоих случаях.
Единственное отличие, я обычно не указываю владельца (Owner). Т.е. F:=TMyFrame.Create(NIL)
После использования сам убираю за собой
F.Parent:=NIL;
FreeAndNil(F)и все норм.
В некоторых фреймах еще большинство компонентов в динамике создается и пересоздается. и тоже никаких явных вызовов деструктора.Так что лучше все-таки следовать архитектуре, а не раскладывать костылики...
Привет. Так не делал никогда. Пока во всех проектах поле использования динамически созданных объектов вызваю DisposeOf... И вот интересно в чем отличие твоего варианта от используемого мной. Как правильно с этим жить? ))
-
В 18.01.2019 в 09:08, beegl сказал:
привет, подскажите, как загрузить и воспроизвесть GIF, "вшитый" в APK файле, чтоб не открывать из директории, .. вот это не действует:
procedure TForm4.FormCreate(Sender: TObject); begin FGifPlayer := TGifPlayer.Create(Self); FGifPlayer.Image := Image1; end;[/CODE]
а если положить в ресурсы?
-
6 минут назад, kami сказал:
Предположил на основании твоего вывода " не будет ошибки дублирования? по моему будет ", который проверяется и опровергается за 2 минуты.
В результате вместо того, чтобы понять откуда ноги растут у ошибки дублирования имен - вы имеете костыли типа "по этой причине именовали := 'frame_'+i.toString; "Предполагай по сути вопроса. А не отвлекаясь на офТоп. Или там в Питере культуре особо не учат? Или тебя ранило походу где-то, чем-то, как-то.
Всем успел накидать я смотрю -
5 часов назад, kami сказал:
попробовать религия не позволяет?
Только что написанный код:
var i: Integer; fr: TFrame13; // отдельный фрейм, у которого в ObjectInspector так и написано: Name = Frame13 begin for i := 0 to 5 do begin fr:=TFrame13.Create(nil); fr.Parent:=Self; fr.Align:=alRight; end;
всё отрабатывает без проблем, никаких вопросов по именованию рантайм-компонентов не возникает.
Откуда узнал про религию дядя?
-
2 часа назад, kami сказал:
помнится, отвечал уже кому-то на форуме. Для динамически создаваемых компонентов просто не указывайте имя. Не нужно оно им. Тогда эта проблема отпадает сама собой.
А разве если создавать по типу
for i:=0 to 5 do begin
a := tframe.create(self);
end;
не будет ошибки дублирования? по моему будет. по этой причине именовали := 'frame_'+i.toString;
-
я убиваю в анонимном потоке
слип(200)
синхронизация (удаление)
-
2 часа назад, Anatoliy сказал:
Прошу прощения можно кодом показать вашу мысль? Я ее потом буду переделывать на с++.
А если так попробовать?
if (NewLocation.Latitude.ToString = '0')
or (NewLocation.Longitude.ToString = '0')
or (NewLocation.Longitude.ToString = 'NAN')
or (NewLocation.Longitude.ToString = 'NAN')
then
accessToAnyFrames := False -
5 часов назад, Anatoliy сказал:
Спасибо. Подходить любой вариант. Можно показать, как это реализовать? Я сделал приложение для американской аптеки в Колорадо. Эта аптека может торговать марихуаной. Apple наложил ограничение, что приложение должно запускаться только в штате Колорадо. Я все это сделал благодоря классу TGeocoder. Но если пользователь нажимает кнопку Запретить доступ к геоданым, не знаю как отловить...
P.S.
А вот гугл опубликовал приложение за пять минут и пофиг им марихуана...
c apple все сложно ))) мне они тоже нервы потрепали.
Я бы сделал так. Если Сенсор возвращает NAN или 0 то не отображал бы какой-нибудь функционал
-
1 час назад, Anatoliy сказал:
Здравствуйте. Приложение использует компонент ТLocationSensor. При самом первом старте приложения возникает стандартное окно IOS с вопросом разрешить или нет доступ к геоданным. Как в приложении можно отловить если пользователь нажал кнопку Запретить доступ к геоданным?
Спасибо.
Sensor не будет отдавать данные - такой вариант не подходит?
-
52 минуты назад, Roma77751 сказал:
под виндой не проверял. Но так и думал что цвета поменяются, этот код(неисправленный) под виндой норм все отображал, а под андроидом криво....с одним и тем же кодом...получается если мы тупо в коде поменяли цвета, то сейчас наверное под виндой все синее... у меня конкретно была проблема с андроидом, это решение видимо не самое оптимальное, но меня устраивает....если есть желание давайте попробуем разобраться с этим...я за!)
на иОС тоже порядок
-
1 час назад, Roma77751 сказал:
ПРОБЛЕМА РЕШЕНА! Всем спасибо, отдельное спасибо dnekrasov и IVGSoft, натолкнули на верную мысль. Только менять переменные надо было тут
Begin
Stream.Read(RGBEntry, SizeOf(RGBEntry));
With APalette do
begin
B := RGBEntry.R or (RGBEntry.R shl 8);
G := RGBEntry.G or (RGBEntry.G shl 8);
R := RGBEntry.B or (RGBEntry.B shl 8);
A := $FF;
end;видимо китайцы что то напутали...?"> Прикрепляю исправленный исходник.
ай да картинка - аж пива захотелось) )
-
Если честно сам не сталкивался. Может кто из комьюнити подскажет. Но по счет скул Лайта - на мой взгляд это пока лучшая схема. в ней и кеш можно хранить и зашифровать можно
-
48 минут назад, Roma77751 сказал:
Друзья доброго времени суток! Ребят подскажите плз, облазил форумы что-то не нашёл инфу, видимо access'ом вообще никто не пользуется или его нельзя использовать в андроиде...в общем ситуация такая: база данных в access загружена на телефоне. Нужно просто отобразить Ее в гриде... я сделал так:
добавил на форму dbdemosconnection(вкладка firedac),fdquery, грид и кнопку. В fdquery прописал sql запрос и с помощью live bindings соединил его с гридом.(в таком раскладе если прописать путь в dbdemosconnection под виндой все работает-проверил. Далее по нажатию кнопки dbdemosconnection.params.database:=путь к файлу на телефоне. Ну и fdquery.active:=true. В итоге приложение просто вылетает когда fdquery.active пытается перейти в значение true... в чем проблема? На андроиде нельзя отобразить access базу или я что-то делаю не так?
Рома, реально рассмотри варик работы с SQL lite& ЧЕрез пару месяцев работы с этой бд сам будешь рад профиту.
-
57 минут назад, Tarik Live сказал:
Вопрос закрыт. Удалось завести другую библиотеку
которую?
-
-
3 часа назад, Barbanel сказал:
Антивирус Сталин: нет файла - нет проблемы
))))))))) точно
-
1 час назад, Равиль Зарипов (ZuBy) сказал:
либо сертификат настроен не правильно
В общем забороли. Дело вот в чем. Само приложение общается с сервером одним (там сертификат норм), а вот сервис который прикручен к приложению общается с другим сервером. Сервис написан нативно. Но писали его до марта 2017. А значит возможно писал не выдержав новые требования.
Решение: выпилил из приложения сервис))) Профит
-
Только что, #WAMACO сказал:
Выложили бы что ли всем полный скрипт на PHP!
Помогите другим разработчикам!
Так есть же уже... Равиль целую статью писал вроде
-
-
Всем доброго времени суток.
Казалось бы. Во время разработки и перед тем как подписали приложение сертификатом Distribution, пуши приходили норм. Но после того как прошли аудит Apple пуши куда-то пропали. FCM возвращал ошибку InvalidRegistration.
Оказалось все достаточно просто. На сервере с которого мы отправляем пуш, В php скрипте, который отправляет пуши надо выставитьsandbox = false
Ура! Всем удачи)
-
В 24.09.2018 в 21:28, CyberStorm сказал:
Привет.
Имею ноутбук (i5, 8gb) с Windows 10, на котором установлена Delphi 10.3, на котором отлично создаются приложения для винды и андроид устройств. Решил попробовать больше, и хочется влиться в айфон-тусовку, но никакого опыта владения яблочных устройств не было. Почитал статьи на хабре, посмотрел вебинары Бровина, везде нужно устройство с MacOS, есть возможность за недорого взять MacMini с core2duo 1,8hz и пятый айфон - и собственно вопрос - будет ли это достаточным для начальной разработки?
Смущает что операционок MacOS 10 - есть много версий, для процессоров Core2Duo - крайняя версия - некий леопард, не слишком ли это отсталая версия для работы? Возможно это что то типа Windows 98?)) Или стоит вовсе заморочиться с виртуальной машиной, и виртуальным айфонами? Или копить на последние mac-mini или imac? Подскажите
исходя из этого
-
Установлена 10.3??? Rio?
-
-
Подсветка синтаксиса pascal на форуме
в Проблемы
Опубликовано
FGX который пилят ребята очень даже хорош! Перевели пару проектов на их Фреймворк. Довольны.