Справка указывает, что добавление gboGroupStyle к ButtonOptions в TButtonGroup "Указывает, что кнопки должны наследовать стиль группы, установленный в контейнере." Но это объяснение все еще оставляет меня утерянным - есть идеи?
Параметр gboGroupStyle в свойстве TButtonGroup.ButtonOptions не имеет ничего общего с GroupIndex, как известно, например, из TSpeedButton.
gboGroupStyle
TButtonGroup.ButtonOptions
GroupIndex
TSpeedButton
Настройка параметра gboGroupStyleTrue позволяет:
True
TButtonGroup.ItemIndex
TGrpButtonItem.OnClick
TButtonGroup.OnButtonClicked
Я согласен, что это довольно обманчивое название, но это то, что я нашел в исходном коде Delphi-XE2.
gboGroupStyle заставляет TButtonGroup действовать как группа - это означает, что в данный момент выбрана одна и только одна кнопка.Это похоже на группирование нескольких TSpeedButton с GroupIndex, где только одна кнопка внутри этой группы выбирается в любое время.Выбранная в данный момент кнопка может быть прочитана и записана через свойство ItemIndex TButtonGroup.Для визуализации выбранной кнопки можно реализовать обработчик OnBeforeDrawButton или OnDrawButton.
Из моих экспериментов видно, что если используется gboGroupStyle, то для свойства ItemIndex можно установить значение, отличное от -1, чтобы TButtonGroup запоминал последнюю нажатую кнопку.