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

antarey

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

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

  • Посещение

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

    2

Активность репутации

  1. Thanks
    antarey отреагировална slav_z в Автопрокрутка TListBox   
    скорее всего стиль у TListBox еще не загружен... и ему нечего еще прокручивать... попробуйте это:

  2. Like
    antarey получил реакцию от Ingalime в C++Builder Windows 10 Native App   
    Подскажите, как в FMX реализовать типа нативное приложение под Вынь 10 - когда заходиш в настройки, потом в какой-то подпункт и в левом верхнем углу в капшине появляется стрелка назад. 
    Убрать капшин , кинуть панель плюс три стандартные кнопки можно, но тогда форма ведет себя не совсем по нативному, когда пристыковываеш ее к краям экрана, она автоматически не ресайзится

  3. Like
    antarey получил реакцию от Евгений Корепов в C++Builder Windows 10 Native App   
    Подскажите, как в FMX реализовать типа нативное приложение под Вынь 10 - когда заходиш в настройки, потом в какой-то подпункт и в левом верхнем углу в капшине появляется стрелка назад. 
    Убрать капшин , кинуть панель плюс три стандартные кнопки можно, но тогда форма ведет себя не совсем по нативному, когда пристыковываеш ее к краям экрана, она автоматически не ресайзится

  4. Like
    antarey отреагировална enatechno в FDQuery & LocalUpdate   
    FDQuery1.CachedUpdates := True; подробнее тут
  5. Like
    antarey отреагировална Равиль Зарипов (ZuBy) в Анимация TextPromt для TEdit   
    Я сделал вот так
  6. Like
    antarey получил реакцию от Равиль Зарипов (ZuBy) в C++Builder & TTask   
    Нда, иногда и примеры надо смотреть  , спасибо за подсказку.
  7. Like
    antarey получил реакцию от Евгений Корепов в NetHTTPClient и личные сообщения на сайте forum.ru-board.com на C++Builder 10.1   
    Проапдейтился, все нормально, заходим
  8. Like
    antarey отреагировална Евгений Корепов в NetHTTPClient и личные сообщения на сайте forum.ru-board.com на C++Builder 10.1   
    Сейчас посмотрю исходники. Минутку...
    Да, в Update1 System.Net.HttpClient.pas исправлен :-)
  9. Like
    antarey отреагировална Равиль Зарипов (ZuBy) в Локаль Андроида   
    смотрите скрин в теме DeviceInfo
  10. Like
    antarey отреагировална Andrey Efimov в Локаль Андроида   
    Попробуйте - Как определить выбранный на устройстве язык?
     
    p.s. Пользуйтесь поиском.
  11. Like
    antarey получил реакцию от zairkz в Есть ли статьи о том, как редактировать стили и использовать BitmapStyleDesigner ?   
    Подскажите, есть где-то, и где если есть, подробная документация по редактированию и созданию новых стилей средствами IDE и BitmapStyle Designer
  12. Like
    antarey получил реакцию от Kitty в Проблемы со стилями и релиз конфигурацией XE8 &C++   
    Написал Ярославу, говорит взяли на заметку, правда когда поправят не уточнил
  13. Like
    antarey отреагировална xenon54 в XE8 и TApplicationEvents   
    Советую глянуть FGX от Ярослава, там есть реализация дополнительных ивентов.
  14. Like
    antarey отреагировална kami в Parallel Library на одно процессорных компах   
    не будет*. Планировщик потоков - штука очень умная.
    *При условии, что Ваш код не глючит сам по себе.
  15. Like
    antarey получил реакцию от Georgeream в Тормоза анимации на Андроид   
    Подскажите, почему при использовании анимации на андроиде она безбожно тормозит.
    TFloatAnimation или AnimateFloat или ChangeTabAction на Виндовс отрабатывается плавно и без тормозов - ета же анимация но на андроиде
    выполняется заметно медленнее и не соответствует установленной скорости 
     
    анимация
    FContainer->AnimateFloat("Position.Z", TrackBarAnimDepth->Value,TrackBarAnimSpeed->Value);   FContainer->AnimateFloatDelay("Position.Z", 0,TrackBarAnimSpeed->Value, 1);    FContainer->AnimateFloatWait(APropertyName, 360,TrackBarAnimSpeed->Value, TAnimationType::InOut); зачастую на андроиде не прорисовывается
     
  16. Like
    antarey получил реакцию от Brovin Yaroslav в Тормоза анимации на Андроид   
    Посмотрите последний пример анимации для XE7  - там анимируются не контролы, а скрин контролов. На телефоне не проверял - но по логике проблема когда много компонентов должна быть решена
  17. Like
    antarey отреагировална Равиль Зарипов (ZuBy) в Перехват СМС сообщения от определенного адресата   
    так сделано в одной из моих программ, автоматическое считывание кода подтверждения оплаты, подредактируй только его и не забудь про разрешения
     
     
  18. Like
    antarey получил реакцию от AndrewSa в Можно ли использовать один TFloatAnimation для двух объектов?   
    Придумал как реализовать эфект Анимация смены TabItem в TabControl , но есть вопрос - можно ли для двух объектов использовать один TFloatAnimation? или реализовывать через TTimer?
  19. Like
    antarey получил реакцию от AndrewSa в Тормоза анимации на Андроид   
    Подскажите, почему при использовании анимации на андроиде она безбожно тормозит.
    TFloatAnimation или AnimateFloat или ChangeTabAction на Виндовс отрабатывается плавно и без тормозов - ета же анимация но на андроиде
    выполняется заметно медленнее и не соответствует установленной скорости 
     
    анимация
    FContainer->AnimateFloat("Position.Z", TrackBarAnimDepth->Value,TrackBarAnimSpeed->Value);   FContainer->AnimateFloatDelay("Position.Z", 0,TrackBarAnimSpeed->Value, 1);    FContainer->AnimateFloatWait(APropertyName, 360,TrackBarAnimSpeed->Value, TAnimationType::InOut); зачастую на андроиде не прорисовывается
     
  20. Like
    antarey отреагировална Brovin Yaroslav в Как вычислить размер текста?   
    Нужно использовать TTextLayout для этого. Это будет быстрее, чем создавать TText, TLabel, которые по сути в конечном итоге используют тот же TTextLayout.
     
    В приведенном ниже коде, нужно правильно задать требуемые настройки текста: шрифт, переносы, выравнивание и тд.
    uses FMX.TextLayout; {$R *.fmx} procedure TForm3.Button1Click(Sender: TObject); var TextLayout: TTextLayout; begin TextLayout := TTextLayoutManager.DefaultTextLayout.Create; try TextLayout.BeginUpdate; try TextLayout.Text := Text; TextLayout.MaxSize := TPointF.Create(Width, 1000); TextLayout.WordWrap := WordWrap; TextLayout.Font := Font; TextLayout.HorizontalAlign := TextAlign; TextLayout.VerticalAlign := VertTextAlign; finally TextLayout.EndUpdate; end; // TextLayout.TextRect; <- Здесь будет размер текста finally TextLayout.Free; end; end; Когда получите размер текста в TEdit, не забудьте, что нужно учесть размер рамки эдита и возможное наличие кнопок, что корректно задать ширину.
     
    Обновлять ширину надо в события OnChange и OnChangeTrtacking, в зависимости от требуемой вам ситуации.
  21. Like
    antarey отреагировална Brovin Yaroslav в Как заставить обычную форму отображаться как Popup?   
    Вам надо сконвертировать абсолютные координаты кнопки в экранные. О том, как это сделать ответ тут: О видах координат в FireMonkey и конвертации между ними
  22. Like
    antarey отреагировална AngryOwl в Как заставить обычную форму отображаться как Popup?   
    Сдается мне что все очень просто... По крайней мере я данным решением пользовался не раз и оно прекрасно работает. А именно:
    - во-первых - есть уже на форуме подобное обсуждение, и если мне не изменяет память, то было и еще!
    - во-вторых: (если очень грубо....)
    ........... var   p : TPointF;   function GetMousePos: TPointF;   var     Platform: IInterface;   begin     Result.Create(0, 0);     Platform := TPlatformServices.Current.GetPlatformService(IFMXMouseService);     if Platform <> nil then       Result := (Platform as IFMXMouseService).GetMousePos;   end; begin   p := GetMousePos;   ваша_форма.Left := round(p.X);  // тут уж вы сами решайте - как вам ее "сдвинуть"   ваша_форма.Top := round(p.Y) + ваша_форма.Height;  // ну аналогично сдвинуть по вертикали.....   ваша_форма.Show; end; только это все грубо. сами решайте что и куда сдвигать и что еще учитывать.
     
    Т.е. надо обрабатывать событие OnClick вашей кнопочки, а внутри обработчика то что написано выше.
    Типа как-то так для вашего случая)
  23. Like
    antarey получил реакцию от ASRenuff в Помогите перевести код с Delphi на С++ по использованию TTextLayout   
    Руководствуясь темой (Как сделать автоматическое изменение высоты TListBoxItem под содержимое текста?) переделал код на C++Builder.
     
    Unit1.h
    public: // User declarations TTextLayoutClass *FTextLyoutClass; TTextLayout* FTextLyout; Unit1.cpp //--------------------------------------------------------------------------- void TForm1::CalculateItemHeight(TObject *Sender) { TListBoxItem *ListItem=dynamic_cast<TListBoxItem*>(Sender); if (ListItem!=NULL) {    FTextLyout->BeginUpdate(); try { FTextLyout->Text = ListItem->Text; FTextLyout->MaxSize = TPointF(ListItem->Width, 1000); FTextLyout->WordWrap = ListItem->WordWrap; FTextLyout->Font = ListItem->Font; FTextLyout->HorizontalAlign = ListItem->TextAlign; FTextLyout->VerticalAlign = ListItem->VertTextAlign; ListItem->Height = FTextLyout->Height; } __finally { FTextLyout->EndUpdate(); } } } //--------------------------------------------------------------------------- void __fastcall TForm1::FormCreate(TObject *Sender) { FTextLyout = (TTextLayout*)(new TTextLayoutClass(TTextLayoutManager::DefaultTextLayout)); } //--------------------------------------------------------------------------- void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action) { FreeAndNil(FTextLyout); } //--------------------------------------------------------------------------- void __fastcall TForm1::ListBoxItem3ApplyStyleLookup(TObject *Sender) { CalculateItemHeight(Sender); } //--------------------------------------------------------------------------- void __fastcall TForm1::ListBoxItem3Resize(TObject *Sender) { CalculateItemHeight(Sender); } //--------------------------------------------------------------------------- И получаю ошибку:

     
    Это я не правильно переделал код или же глюк студии?
    На офф. форуме тоже подымался етот вопрос - но к сожалению без ответов
  24. Like
    antarey получил реакцию от Kitty в Голосование за появление обучающего курса по FireMonkey   
    Очень сильно поддерживаю - не забывайте за бульдозеристов  - если будет код на делфи - рядом на с++
  25. Like
    antarey получил реакцию от Kitty в Как в Firemonkey на C++Builder использовать ява код?   
    Итак, вот результат моих потуг
    antareyToast.java
    package com.antarey; import android.content.Context; import android.os.Handler; import android.os.Looper; import android.widget.Toast; public class antareyToast {     private Context context;     private Handler mHandler = new Handler(Looper.getMainLooper());     private String mMsg;     public antareyToast(Context context) {         this.context = context;     }     public void ShowToast(String msg)     {         mMsg = msg;         mHandler.post(new Runnable() {             public void run() {                 Toast.makeText(context, mMsg, Toast.LENGTH_SHORT).show();             }         });     } } обертка 
    unit com.antarey.antareyToast; interface uses   FMX.Helpers.Android,   Androidapi.Helpers,   AndroidAPI.JNIBridge,   Androidapi.JNI.JavaTypes,   Androidapi.JNI.GraphicsContentViewText,   Androidapi.JNI.os; type   JantareyToast = interface;   JantareyToastClass = interface(JObjectClass)     ['{C4BED43A-7A25-43F2-A9BE-B2E1602FB2D8}']     function init(JContextparam0 : JContext) : JantareyToast; cdecl;   end;   [JavaSignature('com/antarey/antareyToast')]   JantareyToast = interface(JObject)     ['{5AFABA34-5223-424D-A381-5F61E4B67B53}']     procedure ShowToast(JStringparam0 : JString) ; cdecl;   end;   TJantareyToast = class(TJavaGenericImport<JantareyToastClass, JantareyToast>)   end; procedure ShowToast(ToastMsg: String); implementation procedure ShowToast(ToastMsg: String); var  Activity:JantareyToast; begin   Activity:=  TJantareyToast.JavaClass.init(SharedActivityContext);   Activity.ShowToast(StringToJString(ToastMsg)); end; procedure RegisterTypes; begin   TRegTypes.RegisterType('com.antarey.antareyToast',TypeInfo(com.antarey.antareyToast.JantareyToast)); end; initialization RegisterTypes; end. вызов
     
    //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { ShowToast( UnicodeString(_D("Ура!!!! - Получилось")) ); } //--------------------------------------------------------------------------- Все работает.
    Более подробно читаем тут
    Но ето только один из методов, использовать стандартные библиотеки немного проще, проще в том что не надо писать ява код самому, а обертки есть уже готовые
×
×
  • Создать...