"Пикеры" - это вспомогательный функционал для ввода значений различных типов (Дата / Время и др.) без использования и компоновки отдельной формы или группы компонентов пользовательского интерфейса. Это утилитные классы, предлагающие платформозависимые пути выбора значения.
Выбор даты
Пикеры даты позволяют пользователю выбрать дату.

Работа с пикером осуществляется через вспомогательный класс FGX.Pickers.Date.TfgPickerDate. Этот класс позволяет сконфигурировать параметры и логику работы пикера.
Быстрое отображение пикера даты
Если вы просто хотите предоставить пользователю выбрать дату без дополнительных ограничений, вы можете использовать легковесную версию фабричного метода FGX.Pickers.Date.TfgPickerDateFactory.PickDate.
Ниже представлен код отображения выбора даты, с заданной стартовой датой в 1 января 2020 года. Когда пользователь совершит выбор даты, вызывается анонимный обработчик, который в этом примере отобразит сообщение.
TfgPickerDateFactory.PickDate(Self, EncodeDate(2020, 1, 1), procedure (const ASelectedDate: TDate) begin
TfgToast.Show('Selected date: ' + DateToStr(ASelectedDate));
end;
Создание вручную
Экземпляр пикера можно получить используя фабричный метод FGX.Pickers.Date.TfgPickerDateFactory.CreatePicker. После получения экземпляра пикера, вы можете задать обработчики событий для отслеживания процесса выбора даты, а также отслеживания видимости пикера.
uses
System.SysUtils, FGX.Pickers.Date, FGX.Toasts;
var
DatePicker: TfgPickerDate;
begin
DatePicker := TfgPickerDateFactory.CreatePicker(Self);
DatePicker.Date := EncodeDate(2020, 1, 1); // По умолчанию пикер использует сегодняшнюю дату
DatePicker.OnDateSelectedCallback := procedure (const ASelectedDate: TDate) begin
TfgToast.Show('Selected date: ' + DateToStr(ASelectedDate));
end;
end;
Выбор даты из диапазона
Пикер даты поддерживает возможность указать допустимые границы дат. Вы можете задать: нижнюю дату, верхнюю дату или задать и нижнюю и верхнюю даты вместе.
DatePicker.MinDate := EncodeDate(2020, 1, 10);
DatePicker.MaxDate := EncodeDate(2020, 1, 25);

Выбор времени
Пикер времени позволяет пользователю указать время.

Быстро отображение пикера времени
Если вы просто хотите предоставить пользователю выбрать время, вы можете использовать легковесную версию фабричного метода FGX.Pickers.Time.TfgPickerTimeFactory.PickTime.
Ниже представлен код отображения пикера выбора времени, с заданным времением "15:30". Когда пользователь совершит выбор времени, вызовется анонимный обработчик, который в этом примере отобразит сообщение с выбранным временем.
TfgPickerTimeFactory.PickTime(Self, EncodeTime(15, 30, 0, 0), procedure (const ASelectedTime: TTime) begin
TfgToast.Show('Selected time: ' + TimeToStr(ASelectedTime));
end;
Создание вручную
Экземпляр пикера можно получить используя фабричный метод FGX.Pickers.Time.TfgPickerTimeFactory.CreatePicker. После получения экземпляра пикера, вы можете задать обработчики событий для отслеживания процесса выбора времени, а также отслеживания видимости пикера.
uses
System.SysUtils, FGX.Pickers.Time, FGX.Toasts;
var
TimePicker: TfgPickerTime;
begin
TimePicker := TfgPickerTimeFactory.CreatePicker(Self);
TimePicker.Time := EncodeTime(15, 30, 0, 0); // By default picker uses Now time
TimePicker.OnTimeSelectedCallback := procedure (const ASelectedTime: TTime) begin
TfgToast.Show('Selected time: ' + TimeToStr(ASelectedTime));
end;
end;