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

Лидеры

  1. Равиль Зарипов (ZuBy)

    Равиль Зарипов (ZuBy)

    Модераторы


    • Баллы

      3

    • Постов

      2 517


  2. Brovin Yaroslav

    Brovin Yaroslav

    Администраторы


    • Баллы

      2

    • Постов

      2 124


  3. haword

    haword

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


    • Баллы

      2

    • Постов

      533


  4. krapotkin

    krapotkin

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


    • Баллы

      1

    • Постов

      2 185


Популярный контент

Показан контент с высокой репутацией 09.12.2015 во всех областях

  1. давай еще крупнее и еще краснее шрифт, тогда больше людей ответят.
    2 балла
  2. http://delphifmandroid.blogspot.com/2013/11/firemonkey.html
    1 балл
  3. bigjorj

    Bug fix list for RAD Studio 10 Seattle Update 1

    Да. Только Upd1. Он исправляет утечку памяти при которой после некоторого времени работы со студией она начинает безбожно тормозить.
    1 балл
  4. Rusland

    Bug fix list for RAD Studio 10 Seattle Update 1

    Хотфикс к апдейту http://cc.embarcadero.com/item/30453
    1 балл
  5. правильно понимаете и этот модуль кроссплатформенный. прежде чем ставить сторонние компоненты убедитесь что такого модуля нет в Delphi.
    1 балл
  6. для пионеров: при регистрации берут некий набор символов + логин + пароль и вычисляют от полученной строки хэш MD5 или SHA1, получают строку 32 символа (md5) и хранят её на сервере для аутентификации пользователь вводит логин и пароль, опять генерируется хэш и передается на сервер, который ищет его у себя и отвечает есть такой или нет отлов обращений из разных мест должен включать в себя идентификатор места. а вот с этим проблемы. у мобильных устройств такой ID есть... у десктопов можно считать что нет. хотя можно взять CPU ID + BIOS + ComputerName и тоже захешировать. IP брать нельзя, он для всей локальной сети одинаковый...
    1 балл
  7. procedure LoadStyleByName(const StyleName: string); var MyStyle: TFmxObject; begin if FileExists(StyleName) then begin MyStyle := TStyleStreaming.LoadFromFile(StyleName); TStyleManager.SetStyle(MyStyle); end; end; использовать так, если в ComboBox'e указаны имена OnChange LoadStyleByName('путь/'+ComboBox1.Items[ComboBox1.ItemIndex]);
    1 балл
  8. procedure LoadStyleByPlatform; const {$IFDEF ANDROID} StyleName = 'ANDROID'; {$ENDIF} {$IFDEF MSWINDOWS} StyleName = 'WINDOWS'; {$ENDIF} {$IFDEF MacOS} StyleName = {$IFDEF IOS} 'IOS'; {$ELSE} 'MACOS';{$ENDIF} {$ENDIF} var MyStyle: TFmxObject; begin if (FindResource(Hinstance, PChar(StyleName), RT_RCDATA) <> 0) then begin MyStyle := TStyleStreaming.LoadFromResource(Hinstance, StyleName, RT_RCDATA); TStyleManager.SetStyle(MyStyle); end; end; вот так загружается стиль из ресурсов, для определенной платформы
    1 балл
  9. Нашел и устранил последнюю проблему планшета Lenovo TAB S8-50LC (CPU Intel Atom). Не исключаю, что подобная проблема возникает и на других устройствах. При изменении ориентации устройства картинка поворачивается моментально. Возможно поэтому в 9 случаях из 10 программа не успевала на это правильно реагировать и форма в портретной ориентации отображалась как альбомная и наоборот. В общем, это выглядело крайне неприятно: Нужно в процедуре "TPlatformAndroid.HandleAndroidCmd(ACmd: Int32);" найти строки: =============== APP_CMD_CONFIG_CHANGED: begin FContentRectMightHaveChanged := ContentRectChangeRefreshCount; // <<---- !!!! FOrientationMightHaveChanged := True; Include(FAppCmdStates, TAndroidAppCmdState.ConfigChanged); end; =============== и в отмеченной строке умножить ContentRectChangeRefreshCount на 3 или 4: FContentRectMightHaveChanged := ContentRectChangeRefreshCount * 4; После этой поправки и исправлений от "Magnum Labs" (см. выше) форма отображается правильно, сколько планшет не крути. На скорость работы приложения это никак не отразилось. Проверялось также на нескольких аппаратах Samsung. Если будет интересно, в следующий раз расскажу как устранить проблему ненужного появления NavigationBar если кликнуть по TMediaPlayerControl или TWebBrowser, а также странной анимации появления/скрытия указанных компонент при изменении их свойства Visible. Проблема с NavigationBar касается устройств, у которых имеется SoftKey.
    1 балл
  10. TScrollBox автоматически высчитывает размер скролируемого контента. Поэтому, когда вы помещаете в него контрол и перемещаете его за видимые границы контрола (ViewPort), то TScrollBox пересчитывает размеры контента и добавляет полосы прокрутки. Отсюда следует важный факт, что размер контента TScrollBox зависит от внутернний контролов. Вы пытаетесь добавить внутрь контента Layout, выравненный по всей области скроллбокса. Что вы вы этом случае ожидаете получить на выходе? Как я думаю, вы догадываетесь, что это выравнивание зависит от размер родительского контрола. А сам скролл бокс (предок), использует ваш Layout для определение размера контента. Так что в вашей ситуации TScrollBox для контента возьмет размер самого скролл бокса. Чтобы вам добавить прокрутку нужно: Взять за основу TVertScrollBox Поместить внутрь TLayout (если хотите, можно без него напрямую складывать контролы). Выравнять его по верхнему краю. В этом случае вы сможете руками задать требуемую высоту, при получении новых данных Когда вы будите знать размер вашего изображения, пересчитать высоту и обновить ее для вашего Layout.
    1 балл
  11. Без анимации можно любым из этих способов: // Установка координат окна просмотра (Левый верхний угол) ScrollBox.ViewportPosition := TPointF.Create(0,0); ScrollBox1.ScrollTo(0, 0); // Аналог ViewportPosition // Сдвиг на вектор ScrollBox.ScrollBy(-10, -10); С анимацией так: procedure TForm3.FormCreate(Sender: TObject); begin ScrollBox1.AniCalculations.Animation := True; ScrollBox1.AniCalculations.BoundsAnimation := True; ScrollBox1.AniCalculations.TouchTracking := [ttVertical, ttHorizontal]; end; // Сам сдвиг ScrollBox1.AniCalculations.MouseWheel(5, 10);
    1 балл
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...