我试图用Delphi 10构建主菜单。当我将菜单项ShortCut设置为"0“(主衬垫)时,它工作得很好,看起来像”项目0“。所以,当我试图将快捷方式设置为"Num 0“时,它也运行得很好,但是,它看起来像以前的”项目0“。我如何“告诉”用户,他必须按NumPad0 (而不是主pad 0)?
发布于 2018-04-23 07:22:08
正如维多利亚在对主要问题的评论中指出的那样,没有实现这一目标的实际方法(当然,您可以在https://quality.embarcadero.com的质量门户中显示这一点)。
但是,您可以自己绘制菜单项,将TMainMenu.OwnerDraw设置为True,并在TMenuItem级别处理OnDrawItem或OnAdvancedDrawItem。
根据菜单的复杂性,这应该不会太困难,而且您只能为有问题的项处理事件(如果您不处理某个项的事件,则应该自动绘制)。
如果您希望创建一个新的继承组件,则应该重写AdvancedDrawItem方法。
https://stackoverflow.com/questions/49971926
复制相似问题