文档章节

TMainMenu 类[三] - 手动建立菜单(6) : 更换菜单

涂孟超
 涂孟超
发布于 2014/09/26 15:37
字数 194
阅读 1
收藏 0
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

var
  MyMenu1,MyMenu2: TMainMenu;
  Item: TMenuItem;


procedure TForm1.FormCreate(Sender: TObject);
begin
  {建立第一个菜单}
  MyMenu1 := TMainMenu.Create(Self);
  MyMenu1.AutoHotkeys := maManual;

  Item := TMenuItem.Create(MyMenu1);
  Item.Caption := 'AA';
  MyMenu1.Items.Add(Item);

  Item := TMenuItem.Create(MyMenu1);
  Item.Caption := 'BB';
  MyMenu1.Items.Add(Item);

  Item := TMenuItem.Create(MyMenu1);
  Item.Caption := 'CC';
  MyMenu1.Items.Add(Item);


  {建立第二个菜单}
  MyMenu2 := TMainMenu.Create(Self);
  MyMenu2.AutoHotkeys := maManual;

  Item := TMenuItem.Create(MyMenu2);
  Item.Caption := 'XX';
  MyMenu2.Items.Add(Item);

  Item := TMenuItem.Create(MyMenu2);
  Item.Caption := 'YY';
  MyMenu2.Items.Add(Item);

  Item := TMenuItem.Create(MyMenu2);
  Item.Caption := 'ZZ';
  MyMenu2.Items.Add(Item);


  Self.Menu := nil; {当前 Form 没有指向任何一个菜单}
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  Self.Menu := MyMenu1; {指向第一个菜单}
end;


procedure TForm1.Button2Click(Sender: TObject);
begin
  Self.Menu := MyMenu2; {指向第二个菜单}
end;

end.

 
 
 
 
 

 

 

  
效果图:


本文转载自:http://www.cnblogs.com/del/archive/2008/02/04/1064541.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
cocos2d-x项目101次相遇: Scenes , Director, Layers, Sprites

cocos2d-x 101次相遇 / 目录 1 安装和环境搭建 -xcode 2 Scenes , Director, Layers, Sprites 3 建立图片菜单 4 在HelloWorld上--建立新场景 5 增加一个精灵sprite 5.1 缩小sprite并使...

中游学院
2014/04/30
0
0
在(CListView)列表视图中添加右键菜单的方法

使用弹出式菜单(PopMenu) 弹 出式菜单(PopMenu)大家都熟悉,在WIN98的桌面上单击鼠标右键弹出的菜单就是弹出式菜单。通常情况下,弹出式菜单在鼠标右键单击时弹出,当 然,也可以根据需要...

云栖希望。
2017/12/04
0
0
Android 中 MenuInflater 的使用

我们上一节讲的是LayoutInflater 的 使用,而这一节我将讲一下MenuInflater ,顾名思义,LayoutInflater 是用来解析定义在layout 下的布局文件,那么MenuInflater 是不是用来解析定义在menu ...

阿酷
2011/11/02
306
0
Cocos实战篇——作品集

【唠叨】 之前学校的WP课程大作业需要交好几个WP应用,所以随手写了几个游戏。 现在有空,把它分享给大家。 【小游戏目录】 CrazyDodge PaperPlane Sudoku 【CrazyDodge】 0、源码 https://...

shahdza
2015/03/19
0
0
Android高手进阶教程(六)之----Android 中MenuInflater的使用(布局定义菜单)!

大家好,我们上一节讲的是LayoutInflater 的 使用,而这一节我将讲一下MenuInflater ,顾名思义,LayoutInflater 是用来解析定义在layout 下的布局文件,那么MenuInflater 是不是用来解析定义...

迷途d书童
2012/03/02
497
0

没有更多内容

加载失败,请刷新页面

加载更多

PowerDesigner导出所有表到Excel

'******************************************************************************'* File: pdm2excel.vbs'* Purpose: 分目录递归,查找当前PDM下所有表,并导出Excel'* Title: ......

了凡川
18分钟前
2
0
Maven 项目中依赖的搜索顺序

ettings_mirror 的优先级高于 central settings_profile_repo 优先级高于 settings_mirror settings_profile_repo 优先级高于 pom_repositories settings_profile_repo 优先级高于 pom_prof......

xingyu4j
41分钟前
2
0
改变maven项目的名称

pom.xml <groupId>com.soft.xxx</groupId><artifactId>xxx</artifactId><packaging>war</packaging><version>0.0.1-SNAPSHOT</version><name>xxx Maven Webapp</name><build>......

1713716445
42分钟前
2
0
windows下按照RabbitMQ

rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统。它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rabbit MQ 是建立在Erlang OTP平...

zhaochaochao
43分钟前
2
0
10个PHP比特币开源项目

如果你是一个Phper,如果你希望学习区块链,那么本文列出的10个开源的Php比特币项目,将有助于你了解在自己的应用中如何加入对比特币的支持。 如果你希望快速掌握使用Php对接比特币钱包的方法...

笔阁
50分钟前
32
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部