From RAD Studio
Jump to: navigation, search

Go Up to GUI Application Frameworks

FireMonkey leverages the graphics processing unit (GPU) in modern desktop and mobile devices to create visually engaging applications on multiple platforms, targeting the entire range from the personal to the enterprise.


FireMonkey topics include:

  • FireMonkey development for Windows, macOS, iOS, Android, and Linux

Major Features of FireMonkey

  • Cross-platform abstraction layer for OS features like windows, menus, timers, and dialog boxes
  • 2D and 3D graphics
  • Powerful vector engine (like Adobe Flash or Microsoft WPF)
  • Fast real-time anti-aliased vector graphics; resolution independent, with alpha blending and gradients
  • WYSIWYG designer and property editors
  • Advanced GUI engine - window, button, textbox, numberbox, memo, anglebox, list box, and more
  • Advanced skinning engine based on vector graphics styles with sample style themes
  • Shape primitives for 2D graphics along with a built-in set of brushes, pens, geometries, and transforms
  • Advanced animations calculated in background thread; easy to use and accurate, with minimal CPU usage and automatic frame rate correction
  • Bitmap effects rendered in software, including drop shadows and blurring
  • Flexible layouts and compositing of shapes and other controls
  • Layered forms, Unicode-enabled
  • JPEG, PNG, TIFF, and GIF format read/write support
  • Multi-language engine, editor and examples
  • Metal drivers GPU support

VCL Is Incompatible with FireMonkey

Caution: FireMonkey (FMX) and the Visual Component Library (VCL) are not compatible and should not be used together in the same module. That is to say that a module should be exclusively one or the other, either FireMonkey or VCL. The incompatibility is caused by framework differences between FireMonkey (FMX) and VCL.

However, you can:

Three major libraries are provided by RAD Studio:

You can freely use the RTL in a FireMonkey application, but you cannot directly use the VCL in a FireMonkey application module.

See Also