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

enatechno

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

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

  • Посещение

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

    26

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

  1. Это решается редактированием стиля. Например так: 1). Размещаете TGroupbox на форме 2). ПКМ на нем 3). в контекстном меню выбираете Edit Custom Style (или Edit Default style) 4). в открывшемся редакторе стиля указываете платформу (Android) 5). выбираете объект background (по умолчанию он белый). 6). задаете ему свойство Visible=false
  2. Synchronize(LoadImage); Эта строка означает, что LoadImage выполняется в главном потоке (для каждой картинки!). Для примера посмотрите эту тему:
  3. Создал 2 тестовых проекта (один VCL, другой FMX). В обоих только форма с кнопкой. Компилировал из 10 Seattle и 10 Berlin (конфигурация Debug). Запускал на win 7 и 10. Задержки в 1-2 сек не наблюдал. На глаз оба проекта запускаются с одинаковой скоростью. Конфигурация компьютера аналогична Вашей. https://www.youtube.com/watch?v=5q8ZKiYEWko
  4. Button1.StaysPressed := true; procedure TForm1.Button1Click(Sender: TObject); begin if Button1.IsPressed then ShowMessage('нажата') else ShowMessage('отжата'); end;
  5. Анимацию и эффекты можно добавлять прямо в стиль, и события назначать тут же через триггеры.
  6. Где создается/размещается файл базы данных? Проблема может быть в правах доступа. Попробуйте запустить свою программу на другом ПК с правами администратора.
  7. На других ПК рядом с Вашим ехе-файлом нужно положить dll-библиотеку SQLite
  8. UPD. удалил свое сообщение. Совет был не по теме вопроса
  9. enatechno

    Item.ItemData.Bitmap

    В стиле listboxitemnodetail можете хранить ссылки в Detail. ListBoxItem->Detail = L"текст ссылки"; Они не будут отображаться.
  10. enatechno

    Item.ItemData.Bitmap

    Повторюсь. Свободное место справа, которое Вы на рисунке отметили вопросами, в стиле listboxitemleftdetail отведено под Detail. Создайте свой стиль или попробуйте стиль без Detail: ListBoxItem->StyleLookup = L"listboxitemnodetail"; P.S. Другое дело, непонятно, почему ..leftdetail в названии стиля, если Detail отображается справа. Но это вопрос к разработчикам)
  11. enatechno

    Item.ItemData.Bitmap

    Если Вы заполните Detail этого listboxitem, то увидите, почему обрезается текст: такие размеры и положение текста заданы в стиле 'listboxitemleftdetail'. Размер картинки (ширина) тоже задана стилем. Чтобы обойти эти ограничения рекомендую создать свой стиль для listboxitem
  12. Смотрите в стандартных примерах: C:\Users\Public\Documents\Embarcadero\Studio\18.0\Samples\Object Pascal\Multi-Device Samples\User Interface\TabSlideTransition
  13. Попробуйте кроме Visible := True еще делать для Layout BringToFront.
  14. Для конвертации можете использовать TBitmapCodecManager. Например, так я его использую для сохранения файлов в различном формате: var aExtention, aFileName: string; aFileStream: TFileStream; aSaveParams: TBitmapCodecSaveParams; aSurf: TBitmapSurface; aBitmap: TBitmap ..... aFileStream := TFileStream.Create(aFileName, fmCreate); try aSurf := TBitmapSurface.Create(); try aSurf.Assign(aBitmap); aSaveParams.Quality := 70; TBitmapCodecManager.SaveToStream(aFileStream, aSurf, aExtention, @aSaveParams); finally FreeAndNil(aSurf); end; finally FreeAndNil(aFileStream); end; Для сохранения jpg использую aExtention='.jpg' и т.д. И почему Вы используете TJPEGImage и TgifImage? Они разве есть в FMX? TImage.Bitmap читается из файла так: var aImage: TImage; aFileName: string; ... aImage.Bitmap.LoadFromFile(aFileName);
  15. Хочу возразить. Был у меня такой случай. Проект, который успешно компилировался под android на Berlin 10.1 (без upd1) с ndk из коробки (r9c), в один "прекрасный" день при создании lib[ИмяПроекта].so выдал ошибку: lib[ИмяПроекта].so: mmap: failed to allocate ........... bytes for output file: Not enough space Так как со свободным местом было все норм, я стал гуглить подобную ошибку и узнал что она встречается в разных версиях RAD (начиная с XE7). Как решение, предлагалось обновить NDK на более позднюю. Что я и сделал, установив ndk r12b. И это решило мою проблему: с новым ndk проект был успешно откомпилирован и запущен на разных версиях android.
  16. Если хотите пропорционального изменять размеры ScaledLayout: 1). Используйте для него выравнивание по одному краю (например: Top, Left ... ); 2). При запуске программы фиксируйте TScaledLayout.OriginalWidth и TScaledLayout.OriginalHeight; 3). Т.к. в зависимости от выравнивания у Вас будет изменятся один из параметров (при выравнивании Top - Width, при Left - Height), то будьте готовы в OnResize изменять пропорционально второй параметр. Например так: aRatio := ScaledLayout1.Width / ScaledLayout1.OriginalWidth; ScaledLayout1.Height := ScaledLayout1.OriginalHeight * aRatio; tstScaledLayout.zip
  17. Родителем (Parent) является Layout. А Owner у Ваших контролов - форма. ComponentCount считается для Owner. Создавая кнопки в runtime можете задать: aButton := TButton.Create(Layout1); Layout1.Add(aButton); и тогда Layout1.ComponentCount уже не будет равно 0. Для перебора в Parent используйте ChildrenCount for i:=0 to Layout1.ChildrenCount-1 do begin if (Layout1.Children[i] is TButton) or (Layout1.Children[i] is TLabel) then if (TControl(Layout1.Children[i]).Visible) then TControl(Layout1.Children[i]).Width:=50; end;
  18. procedure TForm1.Label7Click(Sender: TObject); var Phase: TCalloutRectangle; begin Phase := crtPhase.Clone(ScrollBox1) as TCalloutRectangle; Phase.OnMouseDown := crtPhaseMouseDown; Phase.OnMouseMove := crtPhaseMouseMove; Phase.Parent := ScrollBox1; Phase.Position.X := crtPhase.Position.X + 10; Phase.Position.Y := crtPhase.Position.Y + 10; Phase.Visible := true; end; Замените у себя эту процедуру и удалите Button1 (как я и сказал выше, TButton не является TShape - поэтому и ошибка).
×
×
  • Создать...