-Поиск по дневнику

Поиск сообщений в rss_forum_sources_ru

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 29.07.2007
Записей:
Комментариев:
Написано: 80


Смещение заголовков меню при создании в рантайм

Воскресенье, 01 Ноября 2020 г. 14:13 + в цитатник
dobriystolyar: Здравствуйте!
XE8. Если верхний пункт меню создан в дизайнтайм, то при добавлении итемов в рантайм - заголовки выравниваются правильно с учетом картинок (вариант 1). Если верхний пункт меню и итемы созданы в рантайм, то заголовки выравниваются НЕ правильно (вариант 2). Код:
    procedure TForm1.Button1Click(Sender: TObject);
    const
    a: array[0..5] of Integer = (-1, 1, -1, -1, 2, -1);
    var
    i: Integer;
    RootItem, ChildItem: TMenuItem;
    begin
    RootItem:= Form1.Menu.Items[0]; // вариант 1
    for i:= Low(a) to High(a) do
    begin
    ChildItem:= TMenuItem.Create(RootItem);
    RootItem.Add(ChildItem);
    ChildItem.Caption:= Format('Item %d', [i]);
    ChildItem.ImageIndex:= a[i];
    end;
    RootItem:= TMenuItem.Create(Form1.Menu); // вариант 2
    Form1.Menu.Items.Add(RootItem);
    RootItem.Caption:= Format('Menu %d', [0]);
    RootItem.ImageIndex:= a[0];
    for i:= Low(a) to High(a) do
    begin
    ChildItem:= TMenuItem.Create(RootItem);
    ChildItem.Name:= Format('miItem%d', [i]);
    RootItem.Add(ChildItem);
    ChildItem.Caption:= Format('Item %d', [i]);
    ChildItem.ImageIndex:= a[i];
    end;
    end;

menu_trouble.png (, : 9)
Как это можно поправить? Спасибо.

https://forum.sources.ru/index.php?showtopic=420504&view=findpost&p=3841507

Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку