Перейти к содержанию
Fire Monkey от А до Я

Slym

Пользователи
  • Постов

    180
  • Зарегистрирован

  • Посещение

  • Победитель дней

    39

Весь контент Slym

  1. ReleSwitch.StylesData['АГДЕКОМУ?.Fill.Color'] обязательно должен быть АГДЕКОМУ если этот АГДЕКОМУ это кореть стиля - то поместит стиль в TLayout, а этот самый АГДЕКОМУ дать имя
  2. Slym

    TSpinBox

    Никак. Читайте что такое числа с плавающей точкой. 1 правило работы с плавающей точкой: Нельзя проверять 2 числа на равенство оператором = нельзя: const dx:double=143.201; const sx:single=143.201; begin assert(dx=sx); end;
  3. Так у тебя уже все есть... кроме отправки почты (а с ней не все так просто как кажется, все борются со спамом) Компонуй и получай свой гонорар
  4. а для чего много pas файлов, почему все в одном не сделать, удобство или что ЗЫ: У меня в текущем проекте 133 pas файла... не считая общих с другими проектами модулей... и это без учета сторонних компонент. и это не удобства ради, я для выживания когда разные несвязанные сущности в одном месте - плохо как двигатель в салоне, бензобак под жопой, выхлопная в лицо, аккумулятор с серной кислотой на каленках...
  5. 1. Говорят - сначала сделай "какнибудь" - оптимизацию оставь на потом 2. А книжку почитай... ООП там всякие... инкапсуляция там, переиспользование кода... по вашему списку 1. Список счетов (желательно с оповещением статусов, типа как на СМС на ватсапе приходят) Кто их делать будет? Бекенд? На чем написан? или его нет? 2. Онлайн каталог номенклатуры (калькулятор с разными расчетами, примерно как в Apk, думаю надо будет подробно объяснять как и что) Онлайн каталог ты получил выше... 3. Раскрой листа (алгоритм я же сделал, просто внедрить): ввод списка с числами (габаритY, габаритX, кол-во) , показать изображение работы алгоритма: Прежде чем внедрять нужно понять к чему? Нафега клиенту твой алгоритм? Он не тебе материал экономит, а себе деньги... Сущьность какая? Заказ? список деталей? детали круглые/квадратные/в форме котиков? Кто раскрой делать будет? Клиент - ему это нафиг ненадо, хоть 1 деталь на лист. Бекенд? Админский фронтэнд? На чем написан? или его нет? 4. Контакты (просто текстовая информация с ссылками) Тупо вывести на экран как Hello world... 5. Отзыв (отправка текста мне на почту) Кто почту отправлять будет? Бекенд? На чем написан? или его нет? 6. Загрузка файлы xls (прайс) Кто и главное куда (база) парсить будет? Бекенд? На чем написан? или его нет? Рано тебе клиентское приложение делать - я тебя бекенда нет по 1,3,5,6 пунктам... и того 2 или даже 3 программы: бекенд, клиентская часть, и одминка для приемщика заказа причем править имеющийся бекенд сайта тебе править низя иначе ты бы послушался и не парсил html а запилил нормальный JSON в нужном формате
  6. делаю перетаскивание внутри скрола. в момент MouseDown таскаемого контрола надо отключить скролирование скрола... что не делаю скролится. пока сделал TOpenAniCalculations(vSB.AniCalculations).TouchTracking := []; но если можно "правильнее" - жду ответа
  7. За такое надо яички в тисочки...
  8. initialization RegisterClass(TFillRGBEffect);
  9. try //bad code here except on E:Exception do ShowMessage(E.Message); end
  10. 1. кидаем GestureManager 2. заполняем Touch/InteractiveGest... (у тапаемого контрола) 3. пишем onGesture (у тапаемого контрола) if EventInfo.GestureID=igiLongTap then ...
  11. Slym

    multicast udp

    А в инде все готово... procedure TForm1.FormCreate(Sender: TObject); begin IdUDPServer1.ReuseSocket:=TIdReuseSocket.rsTrue; IdUDPServer1.DefaultPort:=9898; IdUDPServer1.Active:=true; end; procedure TForm1.IdUDPServer1AfterBind(Sender: TObject); begin IdUDPServer1.Bindings[0].AddMulticastMembership('224.0.0.50'); end;
  12. Slym

    multicast udp

    https://habr.com/ru/post/141021/ ключевой момент "Подключение к группе"
  13. tmemo убери! TStringList возьми. распарсить без визуальных компонент! т.е. пока парсишь ничего ListBox не добавляешь 1. Данные сохраняем в TStringList 2. в потоке парсим и добавляем в другой TStringList Item.Text '=' item.ItemData.Detail 3. в основном потоке вынимаем строки из второго TStringList в ListBox
  14. выкинуть визуальные компоненты из парсинга (memo) и в отдельный тред...
  15. обычно ничего не получается сопровождается текстом: 'Ошибка сети: '+E.Message или lResponse.StatusCode Почувствуй разницу: у мена ошибка с текстом " " в строке n, снифаю - все уходит но не сервер не сохраняет, помогите мне, ой все! ничего не работает! вот мой высер, доделайте за меня... ну че, слабаки! не могете?
  16. Нашел - Штрихи в текстах из той же оперы, кто-то еще округлял размеры и положение (найти не могу)
  17. Лечение уже обсуждалось, что-то найти не могу... у формы Fill сбрасываем в дефолт, любая заливка формы через отдельный ректангл.
  18. SharedActivity.startActivityForResult(intent, 0); результат получаешь в TMessageResultNotification intent.getStringExtra("SCAN_RESULT"); intent.getStringExtra("SCAN_RESULT_FORMAT");
  19. function IntEncode(const S, pwd: String): String; var i, iimax: integer; B, BPwd: TBytes; begin B:= TEncoding.Default.GetBytes(S); BPwd:= System.Hash.THashMD5.GetHashBytes(pwd); iimax:= High(BPwd); for i:= Low(B) to High(B) do B[i]:= B[i] Xor BPwd[i Mod iimax]; result:= TNetEncoding.Base64.EncodeBytesToString(B); end; TBytes "магический" тип как строка: работает +
  20. 1. for i:= low(s) to high(S) do 2. не шифруй строку - шифруй байты B:=TEncoding.Default.GetBytes(S); $0030 (0) XOR $D0AF (Я) = $D09f - это блин шифрация половина текста плаинтекстом? у тебя хэш из латиницы с нулями в hi байте... 0 xor i = i русский текст есть в D0 и D1 диапазонах - так что HashString фикция делай на TBytes там нолей рандом
  21. Slym

    NetHTTPClient Compression?

    Это "не стандартное" поведение, обычно клиент не сжимает, но RFC это не запрещает... но проверь поймет ли сервер твой запрос я использую deflate, gzip это тотже deflate столько с заголовками и CRC и заморочек в связи с этим больше... function CompressData(const Data:TBytes):TBytes; var Source, Dest:TBytesStream; begin Dest:= TBytesStream.Create; try Source:=TBytesStream.Create(Data); try ZCompressStream(Source, Dest, zcMax); finally Source.Free; end; Dest.Size:=Dest.Size; result:=Dest.Bytes; finally Dest.Free; end; end; //AHTUNG! Non standart Request Header (with standart Name)! If truble - Rename то X-Content-Encoding var Params:TBytes; if length(Params)>MinCompressionSize then begin Params:=CompressData(Params); NetHeaders.Value['Content-Encoding']:='deflate'; end;
  22. TMessageResultNotification... see more FMX.InAppPurchase.Android.pas в сообщении прилетит Intent а там по документации... http://fire-monkey.ru/topic/3183-opendialog-для-мобильных-платформ/#comment-37609
  23. заставлять надо TFDConnection, смотри charset* настройки конекшена
  24. System.SysUtils.TOSVersion.Architecture SizeOf(NativeInt)=8
×
×
  • Создать...