2017-02-01 14 views
28

Мне нужна помощь, чтобы заставить символ амперсандов отображаться в Delphi XE6 VCL TActionMainMenuBar. Я столкнулся с подобными запросами на Stack Overflow, но ни один из них напрямую не затрагивает проблему, которую я испытываю.Невозможно получить амперсанд (&) для отображения в Delphi TActionMainMenuBar

При создании действия в TActionManager мне нужно подписать действие для чтения Network & Database. Я попытался использовать два амперсанда в заголовке Network && Database, чтобы избежать ускорителя, который не работал. Когда я включил два амперсанда, я закончил с Network _Database (см. Скриншот 1). Я также установил свойство ActionBar> Items> AutoHotKeys в false и ActionMainMenuBar> PersistentHotKeys на false. Это не исправило мою проблему.

Screenshot1

Единственное, что я действительно пытался из чистого отчаяния, что я думал фиксированной это должно было включать в себя четыре амперсандов Network &&&& Database которые когда бегала обнаружился в Network & Database (см screenshot2). Однако во время тестирования, если бы я нажал Alt, чтобы включить горячие клавиши и перейти в меню, заголовок действия будет читать Network && Database. Я попытался включить скриншот этого, так как у меня меньше 10 точек репутации. Переполнение стека ограничивает мое сообщение двумя вложениями.

Screenshot2

Если кто-то может мне точку в правильном направлении, если я оставил некоторую информацию, пожалуйста, дайте мне знать. У меня закончились идеи о том, как это исправить, и я не могу найти ничего подобного при поиске в Google. Заранее спасибо за помощь.

+8

[Голосовать] (http://qc.embarcadero.com/wc/qcmain.aspx?d=109213). –

+5

Действительно ли это, что * важно отображать '&'? Почему бы просто не использовать «Сеть и база данных» или «Сеть/База данных»? Я только что просмотрел пункты меню в нескольких приложениях (Notepad ++, Visual Studio, например) и еще не видел ничего, кроме 'A и B'. Нет '&' в любом месте. Возможно, вы сражаетесь с битвой, которую другие уже решили, что это не стоит? :) – Deltics

+5

@Deltics Это только битва, потому что RTL и VCL завинчивают ее. Системные меню могут это сделать. –

ответ

1

Вы можете это исправить на OnShow случае вашей формы

action3.caption := 'Network &&Database'; 

 Смежные вопросы

  • Нет связанных вопросов^_^