Здравствуйте.
При работе с Ribbon возникли проблемы:
При динамическом создании новой вкладки, и группы, название группы отображается рандомным цветом и ещё и не изменяется цвет.
Код далее:
Код:
procedure TForm1.Button2Click(Sender: TObject);
var RibbonTabItem:TRibbonTabItem;
Group:TCustomRibbonGroup;
q:integer;
begin
RibbonTabItem:=TRibbonTabItem.Create(ribbon1.Tabs);
RibbonTabItem.Caption:='Создана кодом';
Group:=TRibbonGroup.Create(RibbonTabItem.page);//группа размещается на вкладке
RibbonTabItem.Page.AddGroup(Group); //добавляем группу в коллекцию
Group.Parent:=RibbonTabItem.Page; //указываем родительский элемент для группы
Group.Font.Color:=clBlack;//ничего не меняет
Group.Color:=clBlack;//ничего не меняет
Group.Caption:='Созданный кодом риббон';//указываем заголовок (цветастая надпись)
Group.ActionManager:=ActionManager1;
ActionManager1.ActionBars.Add;//добавили новую коллекцию
ActionManager1.ActionBars[ActionManager1.ActionBars.Count-1].ActionBar:=Group;//добавили в коллекцию новую панель
ActionManager1.ActionBars[ActionManager1.ActionBars.Count-1].Items.Add;
ActionManager1.ActionBars[ActionManager1.ActionBars.Count-1].Items[0].Caption:='Созданная кодом';
ActionManager1.ActionBars[ActionManager1.ActionBars.Count-1].Items[0].CommandStyle:=csControl;
end;
Самое интересное что при создании разных проектов, цвета тоже разные и после компиляций первоначальный цвет сохраняется. Однако если следом создать ещё вкладку/группу, то цвет названия группы будет нормальным.
Поглядел исходник риббона, ничего толком не нашёл.
Система Windows XP SP3 тема WindowsXP (риббон к темам тоже "чувствителен"), Embarcadero® Delphi® XE Version 15.0.3953.35171
Создавать 2 группы и потом 1 удалять не устраивает. Поиск тоже юзал, но по риббону мало информации.
Зачем мне динамически создавать вкладку? Чтоб не загромождать интерфейс и не давать пользователям узнать что-то новое про себя
Если есть другие предложения, то с радостью приму их.