Два столбца TPopupMenu для отображения ярлыков по правому краю

Использование Borland / CodeGear / Ebarcadero C ++ Builder 2009. Можно ли отображать ярлыки (или другой текст), выровненные по правому краю во втором столбце в TPopupMenu?

Например:

[image] Open File        ctrl-O
[image] Close File       ctrl-W
[image] BlahBlah         ctrl-B

и т.п.

Если так, то как?
Я проверил свойство break для элемента, но результаты не совсем то, что я хочу, так как элементы можно выбирать самостоятельно, а не по всей строке. Также это не нарисовано так хорошо.

Ваше мнение приветствуется.

0

Решение

Пункт меню может иметь изображение (см. TMenuItem.ImageIndex свойство), и может иметь назначенный ярлык (см. TMenuItem.ShortCut имущество). VCL автоматически нарисует эти элементы для вас, именно так, как вы показали.

menu1

По умолчанию они немного сдавлены вместе. Вы можете использовать TMenuItem.OnMeasureItem событие, чтобы продлить Width:

menu2

Если вам все еще не нравится, как выглядит чертеж по умолчанию, или вы хотите текст, отличный от ShortCut чтобы появиться справа, вам придется самостоятельно нарисовать пункты меню (см. TMenuItem.OnDrawItem а также TMenuItem.OnAdvancedDrawItem события), затем вы можете сделать пункты меню появляться, как вы хотите.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]