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

Janex72

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

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

  • Посещение

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

  1. Привет всем. Отправляю SMS из своего преложения: Procedure _SendSMS (Target, Messagestr :String); Var smsManager :JSmsManager; smsTo :JString; begin smsManager := TJSmsManager.JavaClass.getDefault; smsTo := StringToJString(target); smsManager.sendTextMessage(smsTo, Nil, StringToJString(messagestr), Nil, Nil); End; Отправляется и приходит нормально. Шас смотрю в content://sms/sent Uri := StrToJURI('content://sms/sent'); Cursor := SharedActivity.GetContentResolver.query(Uri, Nil, Nil, Nil, Nil); Date_SentIdx := Cursor.GetColumnIndex(StringToJstring('date_sent')); StatusIdx := Cursor.GetColumnIndex(StringToJstring('status')); While (Cursor.MoveToNext) Do Begin Date_Sent := JStringToString(Cursor.getString(Date_SentIdx )); Status := Cursor.getInt(StatusIdx); End; и есть большая проблема - в поле date_sent всегда пусто Если отправляю на несушествуюшии номер, то даже в поле status всегда -1. Если тож само отправляю в телефоне из стандартного приложения, то нормально - date_sent с датои, и status с кодом заполнен если номер несушествуюшии... Android 7.0 Delphi 10.4.2 Android API Level вроде как 24 Есть идеи как ето лечить? WBR Janex
  2. Janex72

    Screen Lock

    Привет всем. Есть идея написать свои Screen Lock-er, ну типа когда включаеш телефон то спрашивает пароль или ета фигня с 9 точками где пальцом водиш по точкам ... Подозреваю что простои апликациеи там необоидтись, надо наверно как то с сомим андроидом ето связывать... Мож у каго есть какие то примеры или советы куда копать? WBR Janex
  3. Привет всем. Искал как в FMX Linux-e определить координаты миши если курсор за пределами апликации, нашёл такое: function MousePos: TPointF; var MouseService: IFMXMouseService; begin if TPlatformServices.Current.SupportsPlatformService(IFMXMouseService, IInterface(MouseService)) then Exit(MouseService.GetMousePos); Result := PointF(0, 0); end; всё работает, даже под Linux-ом, но шас нужно ешё определить нажата ли какая то клавиша миши, и тоже если курсор за пределами апликации ... Есть идеи как ??? WBR Janex
  4. Мне задачи по сложнее. Надо не просто запускать готовые скрипти, а чтоб юзер сам мог их писать для апликации, на пример, при запуске какого то юзерского скрипта передаётся в нём (в скриптовую функцию, на пример) какие то параметри, скрипт обрабатывает данные и взаимодеиствует с контролями на форме. На пример, запускается скрипт, где в параметр передаётся XML, в скрипте он обрабатывается и на форме высвечиваются результати в выде, на пример, Gauge, Progressbar, или заливаются текст в TMemo итд. И контролы тоже не вшиты в екзешник в дизаинтаиме, их юзер в рантаиме сам дизаинит и ставит что надо ... Ето как бы примитивная дельфовская IDE но только на питоне ... В "Python 4 Delphi" ето вроде всё можно, но нехватает ума перевести чтоб в дельфе под линукс он компилился, а то под линукс он предусмотрен только для FPC
  5. Janex72

    Python 4 Delph

    Привет всем. Прокопал весь интернет в поисках чего то чем внедрить Python в мою апликацию написаную на Delphi. Нашёл "Python 4 Delphi", под wинду компилится и работает, но мне надо как раз под Linux (Delphi 10.2). Самому подпилить под fmx неудаётся как то Неужели етот "Python 4 Delphi" единственныи в природе для связки дельфи с питоном ?? WBR Janex
  6. Janex72

    Глюк с TCollection

    Привет всем. Сделал компонент, в нём своиство/обект типа TPersistent, а на нём колекция (TCollection) ... Изначально натклнулся, что в дизаинтаиме в обект инспекторе неоткривался редактор где TCollectionitem-и делаются, искал, гуглил, нашёл решение здесь (код по середине): https://stackoverflow.com/questions/6980401/collection-editor-does-not-open-for-a-tcollection-property-in-a-tpersistent-prop Всё работает, в колекцие на пример 5 елементов, но вот если скомпилю под wинду то: Mycomponent.MyPersistentproperty.MyCollection паказывает правильно - 5, а если всё то же скомпилю под андроид, то всегда в любом случаес показывает 1 (!!!) Тоесть всегда одан кокая то пустая колекция, хоть убеися ... Тут под андроид какие то глюки или чё то другое ? WBR Janex
  7. Хммм, да, вроде пашет ... я через dataset дёргал его, наверно изза етого ...
  8. Будем пробовать ... Но вопрос то другои - рисовать на канве с DrawLine самыи быстрии способ ? Подозреваю, что, если, на пример, захочу мультик показывать на канве (сотни всяких draw) с 25fps то врятли канва ето потянет ... Может бить для супер скорости вообше другои подход нужен ?
  9. Приходится каждыи раз перерисовывать весь график. При приходе новых данных, весь графих сдвигается в лево и в конце (с право) рисуется новая точка. Все точки соедены с Line...
  10. Так сделал уже, рисуется, вроде даже быстро... Но мне нужно построить график, как уже писал, которыи будет менятся/перерисовыватся 10 или чаше раз в секунду, и из етого вопрос - рисовать на канве линии с DrawLine будет самыи быстрыи метод или ето каким то другим способом лучше делать ?
  11. Привет всем. Надо мне создать свои Scope - незнаю как по русски он называется Как пример брал TTMSFMXScope - етот типо TChart но сами линии по таимеру передвигаются с право на лево. Готовых компонентов для етого мало (TMS, TeeChart, больше ненашёл), компонент от TMS слишком медlеленныи, мне нужен тупои квадрат в котором двигались отрисованые линии с скоростю как минимум 10 кадров в секунду и отрисовка занимало самое минимальное возможное время, а то на форме ето будет не единственное что будет отрисовыватся... Ну кароч, решил ето делать на TPaintbox-е рисуя линии с DrawLine. Но возникает вопрос - будет ли ето самыи быстрии способ ето сделать, мож есть какие то другие методы? Мож рисовать сперва на TBitmap-е и потом его кидать на канвy? Есть идеи что использовать чтоб достич максимальную возможную скорость отрисовки ? WBR Janex
  12. Атбои ... Часами искал где что нехватает и надобыло только тут написать, как сразу сам нашёл где грабли Надо было только одну строчку добавить, как всё стало на свои места: FFrame.Stored := False;
  13. Привет всем. Надо создать простой компонент который содержал бы фрейм, на VCL много лет такие делал, всё работало, а тут что то не так ... Вот код: Type TxdfScope = Class(TStyledControl) Private FFrame :TmyFrame; Public Constructor Create(Owner :TComponent); Override; Published End; Constructor TxdfScope.Create(Owner :TComponent); Begin Inherited Create(Owner); FFrame := TmyFrame.Create(Self); FFrame.Parent := Self; FFrame.Align := TAlignLayout.Client; SetAcceptsControls(False); End; На фрейме один TButton; Всё вроде как бы правильно, компилится итд. Кидаю компонент на форму - прекрасно, всё как хочется. Сохраняю, открываю заново и получаю AV и т.д. Смотрю в соурс форм и вижу, что видны всё внутренности компонента: object xdfScope1: TxdfScope object TmyFrame Align = Client Size.Width = 200.000000000000000000 Size.Height = 100.000000000000000000 Size.PlatformDefault = False object Button1: TButton Position.X = 32.000000000000000000 Position.Y = 32.000000000000000000 TabOrder = 0 Text = 'Button1' end end end Чувствую что что то не хватает чтоб вёл он себя как нормальный компонент ... WBR Janex
  14. Спасибо, но тут он сылается на ТEdit у которого есть своиство TTextSettings : function TZMaterialEdit.GetTextSettings: TTextSettings; begin Result := FEdit.TextSettings; end; Но у меня свои пустои компонент которыи НЕ наслседовает другои компонент с своиством TTextSettings, и внутри тоже никого с готовым своиством TTextSettings Хотел прикрутить его для моих нужд... обект TTextSettings создаётся и доступен, вот только в дизаинтаиме он в Oбject Inspector-е почему то неразвёртвовается
  15. Ешё проблемы с TTextSettings; Делаю свои компонент, хочу в него добавить TTextSettings. Смотрел всякие примеры, но у меня почему то он в Oбject Inspector-е неразвёртвовается, тоесть, клиекая на +/- стоит в однои строке. Код примерно такои: TxdfLabel = Class(TControl) Private FTextSettings :TTextSettings; Procedure SetTextSettings(const Value: TTextSettings); Public Constructor Create(AOwner: TComponent); Override; Published Property TextSettings :TTextSettings Read FTextSettings Write SetTextSettings; End; Constructor TxdfLabel.Create(AOwner: TComponent); begin Inherited Create(AOwner); FTextSettings := TTextSettings.Create(Nil); End; procedure TxdfLabel.SetTextSettings(const Value: TTextSettings); begin FTextSettings.Assign(Value); End; Немогу понять где грабли ... WBR Janex
  16. Да, вы правы, 10 раз в секунду менять значение излышно, но смушает скорость отображения ... Если мне на форме будет, на пример, 50 лабелов и каждыи меняет текст раз в секунду, то каждому лабелу свои поток делать, что ли ? А то обновить за секунду 50 лабелов качется невозможно ...
  17. Привет всем. Сделал маленькую апликацию для Андроида. Апликация принимает данные через BlueToothLE и на на двух TLabel показывает цифорки ... Обём данных маленькии, одна посылка около 20 баитов. Если данны приходит с интервалом 100 мс, то TLabel-а ешё успевают отобразить информацию, а если интервал уменьшить, то приходит копец Данные заливаются в буффер BlueTooth-а и TLabel-а неуспевают их показать, тоесть, можем послать данные, скажем, пол минуты, потом даже отрубить BlueTooth посылаюшее их и данные на TLabel-а ешё минуту мигают - отображаются ... Поставил ешё Gauge от TMS Components - там тормоза вообше ужас, если 2 цифри за секунду отобразить на циферблате, то ето уже предел ... Шас немогу понять - телефон у меня тормознутыи какои то (CAT-S30, новыи, незагруженыи) или всётаки FMX контролы работают так ужасно медленно ... WBR Janex
  18. Создовать то просто, но ешё надо визуально их редактировать, типо как в IDE дельфах - кликнул на конктроль и появляются вокруг её 6 точек и можеш шас растягывать её, мышкои передвигать по форме итд ... вот что мне надо для FMX форм ...
  19. Janex72

    Редактор форм

    Привет всем. У LMD и TMS Components есть скриптери и соответственно восможность в рантаиме редактировать формы, тоесть кидать на форму контролы итд, и property editor где у контролов своиство посмотреть/поменять. Но ето всё под VCL а мне надо редактировать форми в рантаиме в FMX. Есть что то такое в природе, тоесть как бы в готовых компонентах, если нет, то реально такое создать для FMX-а ? WBR Janex
  20. Привет всем! Задача в кратце токая - в рантаиме создаю, например, 10 фреимов, на каждом по TImageControl, и на каждом фреиме запускаю отдельныи поток где загружается картинка в битмап и дальше уже в TImageControl. Облом получил при загрузки фаила в битмап. Обясняли мне, что битмапи в FMX не Thread Safe. Хотя непонемаю при чём тут Thread Safe а то создаю ведь 10 отдельных екземпляров битмапов, непитаюсь ведь из разных потаках обрашатся к одному и тому же битмапу ... но ок, хрен сними .. Задумался что мож задачу не так поставил. Мне надо ведь просто показать тумбнаил картинки на фреиме, а мож там битмап и не нужен ? В TStream картинка читается в потоке нормально.. мож есть какои то способ её шас отрисовать на Canvas ? Где то упоминалось что надо юзать TStream и TBitmapsurface, что ето будет работать в потоках. Пример как TBitmapsurface отобразить на канве нашёл, но как картинку запихнуть в етот TBitmapsurface (без обрашения к битмапу, ге получаю AV или Out of memory) опять таки немогу понять Целевая задача построить просмотршик фоток на подобие как в дефолтовои камере где пальцом крутиш тумбнаили в лево/в право. Проблема в том что они загружются достаточно долго и прокрутка слишком тормозит ... шас ишу способ загрузить и отобразить тумбнаили как то в отдельных потоках ... WBR Janex
×
×
  • Создать...