TIWMenu 的任务是让原来的 TMainMenu 呈现在网页上, 通过其 AttachedMenu 属性关联一个 TMainMenu 是必需的.
TIWMenu 所在单元及继承链:
IWCompMenu.TIWMenu < TIWCustomControl < TIWBaseHTMLControl < TIWBaseControl < TIWVCLBaseControl < TControl < TComponent < TPersistent < TObject
主要成员:
property TextOffset: Integer //菜单文本偏移(只读) property AttachedMenu: TMainMenu //指定要包装的 TMainMenu property ItemSpacing: TIWSpaceItems //设置顶层菜单项间距: itsNone(默认)、itsEvenlySpaced(均匀分布) property AutoSize: TIWMenuAutoSize //自动大小; 有三个枚举值可选 property MainMenuStyle: TIWMenuStyle //主菜单样式, 包含十几个子选项包括 Css property SubMenuStyle: TIWMenuStyle //子菜单样式, 包含十几个子选项包括 Css property Css: string //Css 比 MainMenuStyle.Css 高一个层级 property SubMenuCss: string //SubMenuCss 比 SubMenuStyle.Css 高一个层级 property TimeOut: Integer //子菜单延迟时间
示例 1 - 任何避免被其他控件遮挡:
{设计时, 在空白窗体上放: 两个 IWRegion、一个 IWMenu、一个 MainMenu, 并给 MainMenu 随便添加些菜单} procedure TIWForm1.IWAppFormCreate(Sender: TObject); begin IWMenu1.AttachedMenu := MainMenu1; //! {把 IWmenu 放到一个容器中, 并设置容器的 ClipRegion := False 即可解决} IWRegion1.Align := alTop; IWRegion1.Height := IWMenu1.Height; IWRegion1.ClipRegion := False; //! IWMenu1.Parent := IWRegion1; IWMenu1.Align := alClient; IWRegion2.Color := $eeffff; IWRegion2.Align := alClient; end;
效果图:

示例 2 - 纵向菜单:
{在上例的基础上, 改成纵向菜单, 并尝试(设计时)通过 TIWImageList 添加图标} procedure TIWForm1.IWAppFormCreate(Sender: TObject); begin IWMenu1.AttachedMenu := MainMenu1; IWMenu1.MainMenuStyle.Orientation := iwOVertical; //! {把 IWmenu 放 IWRegion1 中, 并设置好 IWRegion1 的大小} IWRegion1.SetBounds(4, 4, 60, 80); IWRegion1.ClipRegion := False; IWRegion1.BorderOptions.Style := cbsNone; IWMenu1.Parent := IWRegion1; IWMenu1.Align := alClient; IWRegion2.Color := $eeffff; IWRegion2.Align := alClient; end;
效果图:

分类:
IntraWeb
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2008-06-19 再学 GDI+[53]: 路径 - SetFillMode
2008-06-19 再学 GDI+[52]: 路径 - Reverse、Reset
2008-06-19 再学 GDI+[51]: 路径 - IsVisible、IsOutlineVisible
2008-06-19 学习官方示例 - TApplication.OnShowHint
2008-06-19 学习官方示例 - TApplication.OnMessage
2008-06-19 学习官方示例 - TApplication.OnException
2008-06-19 学习官方示例 - TApplication.OnDeactivate