在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
继续菜单的讨论,在Delphi中,可以和主菜单一样地建立弹出菜单。Delphi的优点是可通过组建的PopupMenu属性把特殊弹出菜单赋给组建。当鼠标放在组件上时,点击右键,就会自动弹出菜单。弹出菜单的事件处理程序和主菜单一样。 文本编辑器的共同特点就是把Cut、Copy和Paste操作放到了快捷菜单上,下面将要为ScratchPad程序的Memo组建增加这样的功能。要建立弹出菜单,复制部分主菜单,遵循以下步骤: 1、从组件面板中选择PopupMenu组件,并放置到窗体上。 2、改变其Name属性为MemoPopup。 3、双击PopupMenu图标运行Menu Designer。 4、点击右键弹出Menu Designer的快捷菜单,从快捷菜单中选择“Select Menu”。出现的对话框显示出应用程序中可以获得的菜单,选择MainMenu点击OK。如下图: 5、点击Edit菜单,点击Cut菜单项,按住Shift键点击Paste菜单项。选中Cut、Copy和Paste三项。 6、复制选择的项到剪贴板,从Delphi主菜单中选择【Edit | Copy】或者Ctrl + C。 7、在从Menu Designer的快捷菜单中选择“Select Menu”,这次选择MemoPopup并点击OK。Menu Designer弹出空弹出菜单。 8、从Delphi主菜单选择【Edit | Paste】或Ctrl + V,Cut、Copy和Paste菜单项都插入到弹出菜单中,如下: 在做几件事情就完成了,更改新的菜单项的Name属性: 1、对于Cut菜单项,Name属性改为PopupCut。 2、对于Copy菜单项,Name属性改为PopupCopy。 3、对于Paste菜单项,Name属性改为PopupPaste。 最后步骤就是为弹出菜单写事件处理程序,主菜单中Cut、Copy和Paste事件处理已经写好了,重复写是多余的,还记得以前建立多个组件共享同一个事件处理程序吗?下面我来逐步实现: 1、在Cut菜单上点击。 2、在Object Inspector中点击Event标签。 3、在OnClick事件的Value栏中点击下列按钮,显示出当前已有事件处理程序清单。 4、从清单中选择EditCutClick。当点击弹出菜单的Cut时,Edit | Cut将被调用。 5、对弹出菜单中的Copy菜单项的OnClick事件设置为EditCopyClick,Paste菜单项的OnClick事件设置为EditPasteClick。 6、在主窗口上点击Memo组件,改变其PopupMenu属性为MemoPopup。 现在程序已经完成了,再次运行测试效果,如下:
创建并保存菜单模板delphi提供了几个菜单模板,可以插入到主菜单和弹出菜单中。也可以在程序创建和保存自己的模板为将来使用。首先启动Menu Designer,建立菜单。 创建了菜单后,从Menu Designer的快捷菜单选择“Save As Template…”,显示Save Template对话框。给菜单起一个有意义的名称,点击OK按钮,菜单作为模板保存。如下: 要插入菜单,和以前一样从Menu Designer中选择“Insert From Template…”,在Insert Template对话框中选择即可。如下: 要删除菜单模板,从Menu Designer中选择“Delete Template…”,在Delete Template对话框选择要删除的模板名称,点击OK即可。如下: Menu Designer是强有力的工具,特别由于输入菜单的能力,它使菜单的建立和编辑变得容易而有趣。 以上代码均在Delphi 7中测试通过,本节示例代码下载:ScratchPad(菜单设计器之三).rar |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论