Skip to main content

Overview

TeeGrid for FireMonkey provides cross-platform grid components that work across Windows, macOS, Linux, iOS, and Android. The FMX implementation uses Firemonkey’s GPU-accelerated rendering for smooth performance on all platforms.
FMX TeeGrid is implemented in the FMXTee.Grid unit and supports all platforms targeted by Embarcadero’s FireMonkey framework.

Installation

Add the FMX units to your project’s uses clause:

Platform Support

FMX TeeGrid is available for all FireMonkey platforms:

Desktop

  • Windows (Win32/Win64)
  • macOS (32-bit/64-bit)
  • Linux (64-bit)

Mobile

  • iOS (Simulator/Device/Device64)
  • Android (32-bit/64-bit)

All Platforms

Single codebase works across all platforms with platform-specific optimizations.

Platform Attribute

FMXTee.Grid.pas:102

Architecture

The FMX implementation consists of two main classes:

TFMXTeeGrid

Internal grid engine optimized for FireMonkey:
FMXTee.Grid.pas:50
Key differences from VCL:
  • Uses FMX controls for cell editing
  • Touch gesture support
  • GPU-accelerated rendering
  • Platform-agnostic input handling

TTeeGrid

Public FireMonkey component:
FMXTee.Grid.pas:110
Published properties:
  • All standard TeeGrid properties
  • FMX-specific properties (Touch, Gestures, etc.)
  • Cross-platform layout properties

Rendering

FMX Painter

FireMonkey uses GPU-accelerated rendering through the TFMXPainter class:
FMXTee.Painter.pas:50
Features:
  • Hardware-accelerated drawing
  • High-quality text rendering with TextLayout
  • Native platform appearance
  • Automatic DPI scaling

Quality Settings

Best for:
  • High-resolution displays
  • Retina/4K screens
  • When visual quality is priority

Paint Method

FMXTee.Grid.pas:197
FMX uses the standard Paint method instead of VCL’s PaintWindow.

Cell Editing

FMX Editor Controls

FMX TeeGrid supports FireMonkey editor controls:

Key Differences from VCL

Editor Events

FMX uses the same event signatures but with FMX controls:

Database Integration

Cross-Platform Data Binding

FireDAC Example

Unit_Main.pas

Touch and Gestures

Touch Support

FMX TeeGrid includes built-in touch and gesture support:

Gesture Handling

FMXTee.Grid.pas:217

Input Handling

Keyboard Events

FMX uses different keyboard event signatures:
FMXTee.Grid.pas:192
Key differences:
  • KeyChar parameter for character input
  • Cross-platform key codes
  • DialogKey for special keys

Mouse Events

FMX uses floating-point coordinates:
FMXTee.Grid.pas:193

Themes and Styling

FMX Styles

FireMonkey uses style sheets for platform-specific appearance:

Platform-Specific Appearance

Scrolling

FMX ScrollBars

FireMonkey scrollbars adapt to platform:

Layout and Positioning

FMX Layout Properties

FireMonkey uses floating-point layout:

Mobile-Specific Features

iOS and Android

Performance Tips

Provides smooth touch scrolling on mobile and desktop.
Improves rendering performance by clipping child controls.

Platform Detection

Conditional Compilation

Common Patterns

Cross-Platform FMX Grid

Limitations

Some features available in VCL may have limitations in FMX:
  • No design-time visual editor (use code-based configuration)
  • Platform-specific control availability
  • Different styling approach than VCL themes
  • Memory management considerations on mobile (ARC on older versions)

See Also

VCL Framework

Native Windows implementation

Lazarus Framework

FreePascal cross-platform support

Cell Editing

Editor controls and customization

Themes

Visual themes and styling