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

estra

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

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

  • Посещение

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

    20

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

  1. Like
    estra получил реакцию от petyaas в Как определить цвет пикселя?   
    В первую очередь нужно научиться пользоваться поиском.
     
    > Определить цвет нужного мне пикселя (X,Y)...
    http://blogs.embarcadero.com/yaroslavbrovin/2013/06/17/firemonkey-bitmap-scanline/ > и нарисовать хотя бы линию этого цвета на форме используя обычный: Canvas.DrawLine
    http://fire-monkey.ru/topic/3-kak-narisovat-tochku-na-kanve-v-firemonkey/#entry7 http://fire-monkey.ru/topic/13-pochemu-na-mobilnykh-platformakh-u-menia-ne-risuet/  
    На всякий случай пример:
    var C: TAlphaColor; procedure TForm1.FormCreate(Sender: TObject); begin c := TAlphaColorRec.Null; end; ///<Summary> /// Получение цвета пикселя ///</Summary> procedure TForm1.Button1Click(Sender: TObject); var bm: TBitmap; M: TBitmapData; begin bm := TBitmap.Create; bm.LoadFromFile( 'c:\TROP002_w100h100.PNG' ); // Получение цвета пикселя bm.Map( TMapAccess.Read, M ); C := M.GetPixel( 10, 10 ); bm.Unmap( M ); // Принудительная перерисовка Invalidate; bm.Free; end; ///<Summary> /// Отрисовка линии ///</Summary> procedure TForm1.FormPaint(Sender: TObject; Canvas: TCanvas; const ARect: TRectF); begin Canvas.Stroke.Color := C; Canvas.Stroke.Kind := TBrushKind.Solid; Canvas.DrawLine( PointF( 0, 0 ), PointF( 100, 100 ), 1 ); end;
  2. Like
    estra отреагировална ruslan в [Юмор] Очень серьезно   
    Как Вы думаете, к чему приведет выполнение следующего кода ?
    StartTime:= Now; while ( not Embarcadero.EOF ) or ( Embarcadero.Bugs.Count > 0 ) do begin   Trolling;   if MonthBetween(Now, StartTime) > 12 then   Embarcadero.Destroy; end; if ( Embarcadero.Bugs.Count > 0 ) then begin   while Embarcadero.Members.Count > 0 do   Embarcadero.Members[0].Destroy;      Mozg.Delete( Mozg.IndexOf('Delphi') ); end else exit;  
  3. Like
    estra отреагировална Brovin Yaroslav в [iOS] Как добавить младшие версии iOS SDK?   
    При сборке приложения из среды, IDE автоматически указывает минимальную поддерживаемую версию в файле:
    <Название проекта>.info.plist Строчка отвечающая за минимальную версию в этом файле:
    <key>MinimumOSVersion</key> <string>6.0</string>
  4. Like
    estra получил реакцию от Brovin Yaroslav в Почему отладчик показывает значение вещественной переменной типа Single, не 0.3, а 0.3000000001192029?   
    так и должно быть.
     
    Обрезать? смотря для чего. Для представления в виде строки может и нужно будет. Вот код, поэкспериментируйте с 2 последними цифрами:
    var a: Double = 0.300000011920929; procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage( FloatToStrF( a, TFloatFormat.ffFixed, 4, 2 ) ); end; > В райнтайме отображается 0,3!
     
    Посмотрите какое значение указано в параметре DecimalDigits
  5. Like
    estra получил реакцию от Dozent в Почему отладчик показывает значение вещественной переменной типа Single, не 0.3, а 0.3000000001192029?   
    так и должно быть.
     
    Обрезать? смотря для чего. Для представления в виде строки может и нужно будет. Вот код, поэкспериментируйте с 2 последними цифрами:
    var a: Double = 0.300000011920929; procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage( FloatToStrF( a, TFloatFormat.ffFixed, 4, 2 ) ); end; > В райнтайме отображается 0,3!
     
    Посмотрите какое значение указано в параметре DecimalDigits
  6. Like
    estra получил реакцию от Rusland в Как добиться эффекта отражения?   
    Не поделитесь своим переводом обертки?
  7. Like
    estra отреагировална Brovin Yaroslav в Почему при старте программы FindStyleResource не может ничего найти?   
    Ответ прост.
     
    Потому что в событии OnCreate и OnShow еще не загружен стиль. Поэтому FindStyleResource ничего вам не найдет. Стиль загружается обычно в момент первой прорисовки.
     
    Два решения:
    Принудительно загрузить стиль для требуемого компонента
    Button1.NeedStyleLookup; Button1.ApplyStyleLookup; Выполнять код по поиску элементов стиля в специально отведенном событии TStyledControl.OnApplyStyleLookup.
  8. Like
    estra отреагировална Andrey Efimov в Как применить анимацию к элементу стиля?   
    Проверил на Label и свойстве Opacity.
    У меня анимация срабатывает сразу, в design-time, без всяких галочек, просто положил на стиль лейбла и всё.
    Как получить доступ из кода:
    procedure TForm1.Button1Click(Sender: TObject); var   StyleObject: TFmxObject;   StyleAni: TFloatAnimation; begin   StyleObject := Label1.FindStyleResource('floatanimationstyle');   if (StyleObject <> nil) and (StyleObject is TFloatAnimation) then   begin     StyleAni := TFloatAnimation(StyleObject);     StyleAni.Duration := 0.9;     StyleAni.StartValue := 0;     StyleAni.StopValue := 1;     StyleAni.Start;   end; end; Проверил, данный код работает.
  9. Like
    estra получил реакцию от Brovin Yaroslav в Распараллеливание процессов   
    Распараллеливание - это распределение вычислений между несколькими процессорами (или несколькими ядрами одного процессора). Есть подозрение, что вы неверно выбрали термин. Про распараллеливание можете почитать тут (Новый модуль System.Threading) или посмотреть тут. Вы же (исходя из сути вопроса) скорее всего имеете ввиду многопоточность. Если так, почитайте в интернете про класс TThread, статей и примеров великое множество.
  10. Like
    estra получил реакцию от AngryOwl в Распараллеливание процессов   
    Распараллеливание - это распределение вычислений между несколькими процессорами (или несколькими ядрами одного процессора). Есть подозрение, что вы неверно выбрали термин. Про распараллеливание можете почитать тут (Новый модуль System.Threading) или посмотреть тут. Вы же (исходя из сути вопроса) скорее всего имеете ввиду многопоточность. Если так, почитайте в интернете про класс TThread, статей и примеров великое множество.
  11. Like
    estra отреагировална Brovin Yaroslav в Как узнать поддерживаемый максимально допустимый размер изображения в TBitmap?   
    В FireMonkey TBitmap имеет верхнее ограничение на размеры хранимого изображения, ограниченные максимально допустимым размером текстур в текущей платформе. Узнать максимальную ширину и высоту можно так:
    var MaxWidthHeight: Integer; begin MaxWidthHeight := TCanvasManager.DefaultCanvas.GetAttribute(TCanvasAttribute.MaxBitmapSize); end;
  12. Like
    estra получил реакцию от Brovin Yaroslav в Утилита генерации pas файлов для AndroidAPI из jar файлов   
    Спасибо.
  13. Like
    estra получил реакцию от Евгений Корепов в Цифровая клавиатура при нажатии кнопки.   
    А как вы скрываете TEdit? Если Edit1.Visible = False, то в данном случае такой вариант не годится (для текстового поля с Visible = False клавиатура появляться не будет). В вашем случае надо делать так: Edit1.Visible = True, Edit1.Opacity = 0. Тогда для кнопки пишем такой код:
    procedure TForm1.Button1Click(Sender: TObject); begin Edit1.SetFocus; end; и получаем желаемый эффект.
  14. Like
    estra получил реакцию от Brovin Yaroslav в Подключение смартфона EXPLEY RIO PLAY   
    Проблемы с подключением устройств помогает решить Moborobo.
  15. Like
    estra получил реакцию от Brovin Yaroslav в [Android] [XE7] Как получить входящие/исходящие сообщения?   
    Это подойдет - Получаем список SMS-сообщений?
  16. Like
    estra получил реакцию от brunnengi в [Android] [XE7] Как получить входящие/исходящие сообщения?   
    Это подойдет - Получаем список SMS-сообщений?
  17. Like
    estra получил реакцию от AngryOwl в [Android] [XE7] Как получить журнал вызовов?   
    Это подойдет - Работаем со списком вызовов?
  18. Like
    estra получил реакцию от AngryOwl в [Android] [XE7] Как получить список контактов?   
    Это подойдет - Работаем со списком контактов, #1, Работаем со списком контактов, #2?
  19. Like
    estra получил реакцию от AngryOwl в [Android] [XE7] Как получить входящие/исходящие сообщения?   
    Это подойдет - Получаем список SMS-сообщений?
  20. Like
    estra получил реакцию от brunnengi в [Android] [XE7] Как получить журнал вызовов?   
    Это подойдет - Работаем со списком вызовов?
  21. Like
    estra получил реакцию от brunnengi в [Android] [XE7] Как получить список контактов?   
    Это подойдет - Работаем со списком контактов, #1, Работаем со списком контактов, #2?
  22. Like
    estra получил реакцию от Morfi в Изменение размера шрифта в RunTime   
    Здесь и здесь есть очень хорошее объяснение.
  23. Like
    estra получил реакцию от Rusland в Доработка компонента для чтения штрих-кодов под RAD XE7   
    Там адаптировать нечего, всего 2 изменения в файле FMX.TKRBarCodeScanner.pas.
     
    1.
    // было uses System.Classes {$IFDEF IOS} ,FMX.TMSZBarReader {$ENDIF} {$IFDEF ANDROID} ,FMX.Platform, FMX.Helpers.Android, System.Rtti, FMX.Types, System.SysUtils, Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes, FMX.StdCtrls, FMX.Edit {$ENDIF} ; // стало uses System.Classes {$IFDEF IOS} ,FMX.TMSZBarReader {$ENDIF} {$IFDEF ANDROID} ,FMX.Platform, FMX.Helpers.Android, System.Rtti, FMX.Types, System.SysUtils, Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes, FMX.StdCtrls, FMX.Edit {$IF CompilerVersion >= 20} ,Androidapi.Helpers {$ENDIF} {$ENDIF} ; 2
    // было {$IFDEF ANDROID} function TTKRBarCodeScanner.HandleAppEvent(AAppEvent: TApplicationEvent; AContext: TObject): Boolean; begin Result := False; if FMonitorClipboard and (AAppEvent = aeBecameActive) then begin Result := GetBarcodeValue; end; end; {$ENDIF} // стало {$IFDEF ANDROID} function TTKRBarCodeScanner.HandleAppEvent(AAppEvent: TApplicationEvent; AContext: TObject): Boolean; begin Result := False; if FMonitorClipboard and (AAppEvent = {$IF CompilerVersion >= 20}TApplicationEvent.{$ENDIF}aeBecameActive) then begin Result := GetBarcodeValue; end; end; {$ENDIF}
  24. Like
    estra получил реакцию от Brovin Yaroslav в [Android] XE7 Как получить состояние клавиатуры?   
    uses FMX.VirtualKeyboard; var Keyboard: IFMXVirtualKeyboardService; begin if TPlatformServices.Current.SupportsPlatformService( IFMXVirtualKeyboardService, IInterface( Keyboard ) ) then if TVirtualKeyboardState.Visible in Keyboard.GetVirtualKeyBoardState then ShowMessage( 'клавиатура открыта' ) else ShowMessage( 'клавиатура скрыта' ); end;
  25. Like
    estra получил реакцию от Brovin Yaroslav в Доработка компонента для чтения штрих-кодов под RAD XE7   
    Там адаптировать нечего, всего 2 изменения в файле FMX.TKRBarCodeScanner.pas.
     
    1.
    // было uses System.Classes {$IFDEF IOS} ,FMX.TMSZBarReader {$ENDIF} {$IFDEF ANDROID} ,FMX.Platform, FMX.Helpers.Android, System.Rtti, FMX.Types, System.SysUtils, Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes, FMX.StdCtrls, FMX.Edit {$ENDIF} ; // стало uses System.Classes {$IFDEF IOS} ,FMX.TMSZBarReader {$ENDIF} {$IFDEF ANDROID} ,FMX.Platform, FMX.Helpers.Android, System.Rtti, FMX.Types, System.SysUtils, Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes, FMX.StdCtrls, FMX.Edit {$IF CompilerVersion >= 20} ,Androidapi.Helpers {$ENDIF} {$ENDIF} ; 2
    // было {$IFDEF ANDROID} function TTKRBarCodeScanner.HandleAppEvent(AAppEvent: TApplicationEvent; AContext: TObject): Boolean; begin Result := False; if FMonitorClipboard and (AAppEvent = aeBecameActive) then begin Result := GetBarcodeValue; end; end; {$ENDIF} // стало {$IFDEF ANDROID} function TTKRBarCodeScanner.HandleAppEvent(AAppEvent: TApplicationEvent; AContext: TObject): Boolean; begin Result := False; if FMonitorClipboard and (AAppEvent = {$IF CompilerVersion >= 20}TApplicationEvent.{$ENDIF}aeBecameActive) then begin Result := GetBarcodeValue; end; end; {$ENDIF}
×
×
  • Создать...