FoxPopupMenu
<p>FoxPopupMenu,FoxUI提供的弹出菜单组件</p>
<p>注意基于用户体验和设计模式考虑,FoxPopupMenu最多支持三级菜单,再深其实也不符合使用和设计模式。</p>
<p><strong>属性</strong>
BarSetting 菜单左侧状态栏
Back 背景图
Caption 标题
Logo 图标
Color 状态栏颜色
ShowBar 是否显示 默认不显示
Split 对背景图进行竖向三分法 y1(top) y2(bottom) </p>
<p>ImageList 图标列表 对接 <a href="https://www.showdoc.cc/p/ff039e66f52948a431eb58f823029a54" title="FoxUIBmp32List">FoxUIBmp32List</a></p>
<p>MenuItems 菜单项集合</p>
<p>MenuSetting 菜单设置
Alpha 窗体透明度
Alignment 菜单文字排版方式
Barwidth 左侧状态栏宽度
ItemHeight 菜单项高度
MarginBtn 按钮间距
MarginCheck 勾选框间距
MarginImgList 图标间距
MarginItem 菜单项间距
MarginTxt 文字间距
MenuFont 菜单文字字体
MenuMinWidth 菜单窗体最小宽度 0 表示取当前菜单项里最宽的
RoundValue 菜单项圆角设置
FormRound 窗体圆角设置
ShadowColor 窗体阴影颜色
ShadowWidth 窗体阴影宽度
Space 通用间距</p>
<p>SkinSet 皮肤管理
ArrowSub 子菜单箭头皮肤序号
BtnUpDown 上下按钮皮肤序号
CheckRadio 勾选框皮肤序号
Form 窗体皮肤序号
Item 菜单项皮肤序号
Line 分割线皮肤序号</p>
<p>菜单项目的具体颜色管理参见 <a href="https://www.showdoc.cc/p/05282d9cd26bf19cae4fe435ff761e2f" title="FoxColorManager">FoxColorManager</a></p>
<p><strong>提供的事件</strong>
OnAfterDrawItem 菜单绘制后触发</p>
<p>OnBeforePopup 菜单弹出前触发</p>
<p>OnMenuFormAfterDraw 菜单窗体绘制后事件 我们可以在这里绘制自己的背景</p>
<p>OnMenuItemMouseMove,OnMenuItemMouseDown OnMenuItemMouseUp 鼠标在菜单上的移动触发事件</p>
<p>OnMenuItemOwnerDraw 菜单项绘制自定义事件</p>
<p>OnMenuItemAfterDraw 菜单项绘制后触发事件</p>
<p>OnMemuClose 菜单关闭事件</p>
<p>OnMenuItemMeasure 菜单项尺寸动态修改事件</p>
<p>OnMenuItemFontSelect 菜单项绘制字体动态修改事件</p>
<p>OnMenuItemColorSelect 菜单项绘制底色动态修改事件</p>
<p>OnMenuItemCheckColorSelect 菜单项绘制勾选框颜色事件</p>
<p>OnMenuItemOffSet 菜单项绘制偏移事件</p>
<p>OnBorderSelect 绘制菜单窗体边框事件触发</p>
<p>OnMenuShowPosition 菜单显示动态修改位置</p>
<p>OnPopup 菜单弹出</p>
<p>OnMenuBarFontSelect 菜单栏左侧文字自定义事件</p>
<p>OnSubMenuShow 二级菜单显示触发</p>
<p>OnLastMenuShow 三级菜单显示触发</p>
<p>OnSubMenuItemRightClick 二级菜单菜单项右键点击</p>
<p>OnLastMenuItemRightClick 三级菜单菜单项右键点击</p>
<p>OnMenuItemDataDelect 菜单项目删除事件触发 方便释放绑定数据
<strong>提供的方法</strong>
Procedure Clear;
Procedure Popup(x,y:Integer;GetFocus:Boolean=True);//弹出菜单
Procedure RefrushMenuItem(Aitem:TFoxMenuItem);//刷新菜单项
function AddItem:TFoxMenuItem;//加入项
function InsertItem(index:Integer):TFoxMenuItem;//插入菜单项
procedure DeleteItem(Aitem:TFoxMenuItem);//删除项
Procedure CloseMenu(IsNormal:Boolean=True);//关闭菜单</p>