TMlSkinMenu

菜单皮肤组件,把窗体上的主菜单和右键菜单换成图片绘制的皮肤菜单。

分类
菜单
所在单元
uMlSkinMenu.pas
继承自
TComponent

用法要点

  • 每个需要皮肤菜单的窗体都要放一个,它会接管这个窗体上所有 TMainMenu 和 TPopupMenu 的绘制;只放菜单不放它,弹出的仍是系统灰色菜单。
  • 菜单背景用 Menu_bk,选中条用 Menu_hilight,勾选标记、单选标记、子菜单箭头各有对应的图片属性。
  • GlyphBarWidth 是菜单左侧图标栏的宽度,BorderWidthBorderOffset 调整菜单边框。

示例

摘自 Demo:MlSkin.Demo.QQ旋风.v3.0(窗体文件 .dfm)

object mn1: TMlSkinMenu
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  HotFont.Charset = DEFAULT_CHARSET
  HotFont.Color = clWhite
  HotFont.Height = -11
  HotFont.Name = 'Tahoma'
  HotFont.Style = []
  Menu_bk = 'MlSkinMenu_bk'
  Menu_hilight = 'MlSkinMenu_hilight'
  Menu_Check = 'MlSkinMenu_icon_check'
  Menu_Radio = 'MlSkinMenu_icon_radio'
  Menu_SubArrow = 'MlSkinMenu_sub_arrow'
  Left = 288
  Top = 129
end

属性 12

名称类型默认值说明
AboutTMlAboutInfo设计期属性。在对象检查器里双击会弹出 MlSkin 的关于窗口,显示组件版本信息;运行时没有作用,也不会保存到 dfm。
FontTFont菜单文字的字体。
HotFontTFont鼠标移上去时使用的字体,可换颜色或加下划线做悬停效果。
LineColorTColor$00C4C4C4菜单分隔线的颜色。
Menu_bkTMlResID菜单背景图片。
Menu_hilightTMlResID菜单项选中时的高亮条图片。
Menu_CheckTMlResID菜单项的勾选标记图片。
Menu_RadioTMlResID菜单项的单选标记图片。
Menu_SubArrowTMlResID有子菜单时右侧箭头的图片。
BorderOffsetInteger6菜单内容相对边框的偏移(像素)。
BorderWidthInteger0菜单边框的宽度(像素)。
GlyphBarWidthInteger31菜单左侧图标栏的宽度(像素)。菜单项的图标画在这一栏里。

本页只列出 MlSkin 新增的属性和事件;Align、Anchors、Font、OnClick 等标准 VCL 属性同样可用,用法与原生控件一致。

离线帮助文档需要离线查阅时,可下载 PDF / CHM 版帮助文档。