Slym
-
Постов
180 -
Зарегистрирован
-
Посещение
-
Победитель дней
39
Активность репутации
-
Slym получил реакцию от Ingalime в Свойства стиля у TSwitch
ReleSwitch.StylesData['АГДЕКОМУ?.Fill.Color']
обязательно должен быть АГДЕКОМУ
если этот АГДЕКОМУ это кореть стиля - то поместит стиль в TLayout, а этот самый АГДЕКОМУ дать имя
-
Slym получил реакцию от #WAMACO в Как масштабировать Bitmap на смартфоне?
За такое
надо яички в тисочки...
-
Slym получил реакцию от mazayhin в Требуется приложение на на все смартфоны
1. Говорят - сначала сделай "какнибудь" - оптимизацию оставь на потом
2. А книжку почитай... ООП там всякие... инкапсуляция там, переиспользование кода...
по вашему списку
1. Список счетов (желательно с оповещением статусов, типа как на СМС на ватсапе приходят)
Кто их делать будет? Бекенд? На чем написан? или его нет?
2. Онлайн каталог номенклатуры (калькулятор с разными расчетами, примерно как в Apk, думаю надо будет подробно объяснять как и что)
Онлайн каталог ты получил выше...
3. Раскрой листа (алгоритм я же сделал, просто внедрить): ввод списка с числами (габаритY, габаритX, кол-во) , показать изображение работы алгоритма:
Прежде чем внедрять нужно понять к чему? Нафега клиенту твой алгоритм? Он не тебе материал экономит, а себе деньги... Сущьность какая? Заказ? список деталей? детали круглые/квадратные/в форме котиков?
Кто раскрой делать будет? Клиент - ему это нафиг ненадо, хоть 1 деталь на лист. Бекенд? Админский фронтэнд? На чем написан? или его нет?
4. Контакты (просто текстовая информация с ссылками)
Тупо вывести на экран как Hello world...
5. Отзыв (отправка текста мне на почту)
Кто почту отправлять будет? Бекенд? На чем написан? или его нет?
6. Загрузка файлы xls (прайс)
Кто и главное куда (база) парсить будет? Бекенд? На чем написан? или его нет?
Рано тебе клиентское приложение делать - я тебя бекенда нет по 1,3,5,6 пунктам...
и того 2 или даже 3 программы: бекенд, клиентская часть, и одминка для приемщика заказа
причем править имеющийся бекенд сайта тебе править низя иначе ты бы послушался и не парсил html а запилил нормальный JSON в нужном формате
-
-
Slym получил реакцию от Ingalime в Как определить версию Андроид?
System.SysUtils.TOSVersion.Architecture
SizeOf(NativeInt)=8
-
Slym получил реакцию от Ingalime в Время нажатия пальца на экран
try
//bad code here
except
on E:Exception do
ShowMessage(E.Message);
end
-
Slym получил реакцию от Lelik Lelikov в Время нажатия пальца на экран
1. кидаем GestureManager
2. заполняем Touch/InteractiveGest... (у тапаемого контрола)
3. пишем onGesture (у тапаемого контрола)
if EventInfo.GestureID=igiLongTap then ...
-
Slym получил реакцию от Евгений Корепов в multicast udp
https://habr.com/ru/post/141021/
ключевой момент "Подключение к группе"
-
Slym получил реакцию от gonzales в 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;
-
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;
-
Slym получил реакцию от gonzales в multicast udp
https://habr.com/ru/post/141021/
ключевой момент "Подключение к группе"
-
Slym получил реакцию от Евгений Корепов в HTTP отправка Image на сервер в формате stream
обычно ничего не получается сопровождается текстом: 'Ошибка сети: '+E.Message или lResponse.StatusCode
Почувствуй разницу:
у мена ошибка с текстом " " в строке n, снифаю - все уходит но не сервер не сохраняет, помогите мне,
ой все! ничего не работает! вот мой высер, доделайте за меня... ну че, слабаки! не могете?
-
Slym получил реакцию от Barbanel в HTTP отправка Image на сервер в формате stream
обычно ничего не получается сопровождается текстом: 'Ошибка сети: '+E.Message или lResponse.StatusCode
Почувствуй разницу:
у мена ошибка с текстом " " в строке n, снифаю - все уходит но не сервер не сохраняет, помогите мне,
ой все! ничего не работает! вот мой высер, доделайте за меня... ну че, слабаки! не могете?
-
Slym получил реакцию от Ingalime в Сканер QR Кода зависает приложение
SharedActivity.startActivityForResult(intent, 0);
результат получаешь в TMessageResultNotification
intent.getStringExtra("SCAN_RESULT");
intent.getStringExtra("SCAN_RESULT_FORMAT");
-
Slym получил реакцию от Aleks133 в Сканер QR Кода зависает приложение
SharedActivity.startActivityForResult(intent, 0);
результат получаешь в TMessageResultNotification
intent.getStringExtra("SCAN_RESULT");
intent.getStringExtra("SCAN_RESULT_FORMAT");
-
Slym получил реакцию от Ingalime в 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;
-
Slym получил реакцию от Евгений Корепов в Передача параметров (с русскими буквами) в UTF8 в NetHTTPClient.Post
HTTPAnalyzer показывает:
POST / HTTP/1.1 Connection: Keep-Alive Content-Type: application/x-www-form-urlencoded; charset=utf-8 User-Agent: Embarcadero URI Client/1.0 Host: www.yandex.ru Content-Length: 148 nOwnerOrganizMode=1&cRegNumber=%D1%81-5%2F1&cBegRegDate=22.05.2029&cFIO=%D1%81%D0%B5%D1%80%D0%B3&cDocContent=%D0%B9%D1%86%D1%83qwe%D0%B9%D1%86%D1%83 Обилие %D0 - показывают что уходит UNICODE, а кодирование цифр и английского одним символом указывает что это UTF8... и заголовки этому соответствуют
Проблема на клиенте отсутствует... копай сервис
-
Slym получил реакцию от Barbanel в TEdit искажает текст
УБЕРИ ФОН С ФОРМЫ:
фон делай отдельным Rectanglом - там любой цвет
кроме шрифтов всплывет и другое читать тут:
-
Slym получил реакцию от Barbanel в TEdit искажает текст
Данный артефакт я тоже ловил на лабелах - лечится именно восстановлением фона. (хотя эм могла гденить еще косячнуть)
Во всех формах надо убрать фон (возможно ты используешь несколько форм)...
В чистом проекте артефакт есть? сделай полный билд, передерни эм делфи, кофе попей...
-
Slym получил реакцию от Aleks133 в Загрузка настроек приложения из БД
FDQuery1.Lookup?
или RTTI
c:=FindComponent(FDQuery1.Fields[1].AsString)
if assigned(c)
SetProp(c,FDQuery1.Fields[2].AsString,TValue.From(FDQuery1.Fields[3].AsString))
-
Slym получил реакцию от Anatoliy в Загрузка настроек приложения из БД
FDQuery1.Lookup?
или RTTI
c:=FindComponent(FDQuery1.Fields[1].AsString)
if assigned(c)
SetProp(c,FDQuery1.Fields[2].AsString,TValue.From(FDQuery1.Fields[3].AsString))
-
Slym получил реакцию от Евгений Корепов в ListBoxItem.Data - под Windows все работает под Android выдает ошибку.
Под андроид идет опция AUTOREFCOUNT - все объекты имеют счетчик ссылок...
любое присваивание - это +/- ссылки, даже Free не честное:
procedure TObject.Free;
begin
// under ARC, this method isn't actually called since the compiler translates
// the call to be a mere nil assignment to the instance variable, which then calls _InstClear
{$IFNDEF AUTOREFCOUNT}
if Self <> nil then
Destroy;
{$ENDIF}
end;
т.е. Free ничего не делает!!! - экземпляр остается в зомбирежиме (ты его убил а оно ходит) пока счетчик до 0 не до тикает.
TObject(TreeItem); - пытается найти методы подсчета ссылок (Это же объект!) и не находит т.к. это не объект вовсе.
TTreeItem = record меняем на TTreeItem = class, честно создаем и не забываем убить, хотя под AUTOREFCOUNT - оно само должно помереть если циклической ссылочности нет.
-
Slym получил реакцию от qz5 в ListBoxItem.Data - под Windows все работает под Android выдает ошибку.
Под андроид идет опция AUTOREFCOUNT - все объекты имеют счетчик ссылок...
любое присваивание - это +/- ссылки, даже Free не честное:
procedure TObject.Free;
begin
// under ARC, this method isn't actually called since the compiler translates
// the call to be a mere nil assignment to the instance variable, which then calls _InstClear
{$IFNDEF AUTOREFCOUNT}
if Self <> nil then
Destroy;
{$ENDIF}
end;
т.е. Free ничего не делает!!! - экземпляр остается в зомбирежиме (ты его убил а оно ходит) пока счетчик до 0 не до тикает.
TObject(TreeItem); - пытается найти методы подсчета ссылок (Это же объект!) и не находит т.к. это не объект вовсе.
TTreeItem = record меняем на TTreeItem = class, честно создаем и не забываем убить, хотя под AUTOREFCOUNT - оно само должно помереть если циклической ссылочности нет.
-
Slym получил реакцию от #WAMACO в Helper для TBitmap - асинхронная загрузка картинки из URL
аяяй! Совсем разленились try юзать, все на RefCounting надеетесь...
ну-ну... а под вендой мемлики плодятся (если файла нет - Surf куда?)
не-не... переделать! а то студенты накопипастят...
procedure TBitmapAsyncLoader.LoadImageAsync(const AFilePath:string; Callback: TProc); begin TTask.Run( procedure var ABitmapSurface : TBitmapSurface; begin ABitmapSurface:=TBitmapSurface.Create; try if TBitmapCodecManager.LoadFromFile(AFilePath, ABitmapSurface, CanvasClass.GetAttribute(TCanvasAttribute.MaxBitmapSize)) and assigned(Callback) then TThread.Synchronize(nil, Callback); finally ABitmapSurface.Free; end; end); end;
-
Slym отреагировална Barbanel в Аналог TDBGrid для FMX
Вы случайно не в Эппл работаете?
"Если у нас чего-либо нет - значит пользователям это не нужно" (С)
Шучу-шучу)))
Разумеется я отдаю себе отчет о накладных расходах, и о траффике. Миллион записей мы и за год не сгенерируем, а больше пары тысяч отображать и не требуется, а если и потребуется то был бы инструмент - проблема решится.
Вопрос был лишь в том, есть ли такой аналог как DBGrid.
Пытаюсь написать нечто похожее через хелпер к TGridModel, пока получается.
Когда меня все будет устраивать - выложу в общий доступ.