All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
菜鸟也学习ASP.NET如何读取数据库内容_.net资料_编程技术
用PHP对GB编码到UTF-8编码的动态转换_php资料_编程技术
PHP获取远程图片并把它保存到本地_[PHP教程]
sql中获得部分时间的方法_[SQL Server教程]
SQL表连接方式详解_mssql学习_编程技术
C#网络应用编程基础练习题与答案(四)_[Asp.Net教程]
AJAX中JavaScript类的三种成员_[AJAX教程]
AspNetPager分页控件--使用方法_.net资料_编程技术
使用ASP.NET,2.0,DetailsView控件处理数据_[Asp.Net教程]
使用,ASP.NET,Atlas,PageNavigator控件实现客户端分页导航_[Asp.Net教程]
Reading number is top 10 pictures
两张抽象画
这才叫绝色美女2
NeedWallpaper7
A man's favorite things6
王艳写真温柔如水1
NeedWallpaper12
西班牙山村小景2
西班牙山村小景1
妹子最好别玩单反
The little woman's bright wire2
Download software ranking
Tram sex maniac 2 (H) rar bag7
linux安装大全
卡丁车单机版
Tram sex maniac 2 (H) rar bag2
matrix1
网页特效实例大全
电车之狼R
天龙八部十二宫服务端
变速齿轮3.26
Unix video tutorial14
aaa published in(发表于) 2014/7/19 0:11:03 Edit(编辑)
Delphi带历史信息的菜单实例

Delphi带历史信息的菜单实例

Delphi带历史信息的菜单实例

实例锐明

在有些软件中,菜单栏中可以记录已经打开过的文件信息,使用户操作简单、快捷。当用户要打开己打开过的文件时,不需要重复查找,只需选择菜单中打开过的文件,即可实现打开该文件的操作。运行本例,效果如果所示。



效果如图所示

技术要点

本例使用的是动态插入菜单的技术,利用菜单的动态插入技术,可以完成在菜单中记录打开过文档的功能,即当打开一个文件后,将这个文件的完整路径插入到菜单的相应位置。主要用到了TMainMenu组件的Insert()方法。在菜单的OnChange事件中。为菜单项指定相应的事件。动态插入菜单项的代码如下:

procedure TForm1.N2Click(Sender: TObject);

var

QQ:Tmenuitem;

begin

QQ:=Tmenuitem.Create(nil);

if OpenDialog1.Execute then

begin

QQ.Caption:=OpenDialog1.FileName;

MainMenu1.Items.Items[0].Insert(3,QQ);

end;

end;

注意:动态插入菜单项,首要创建TMenuItem菜单对象。

实现过程

1.新建一个工程,该工程会自动创建一个主窗体,默认命名为Form1.

2.在窗体上添加TMainMenu组件和TOpenDialog组件。

3.程序代码如下:

procedure TForm1.N2Click(Sender: TObject);

var

QQ:Tmenuitem;

begin

QQ:=Tmenuitem.Create(nil);

if OpenDialog1.Execute then

begin

QQ.Caption:=OpenDialog1.FileName;

MainMenu1.Items.Items[0].Insert(3,QQ);

end;

end;

procedure TForm1.N4Click(Sender: TObject);

var

i:integer;

begin

for i:=3 to mainmenu1.Items.Items[0].Count-3 do

begin

mainmenu1.Items.Items[0].Items[i].OnClick:=mainmenu1.Items.Items[0].Items[2].OnClick;

end;

self.Close;

end;

procedure TForm1.MainMenu1Change(Sender: TObject; Source: TMenuItem;

Rebuild: Boolean);

var

i:integer;

begin

for i:=2 to mainmenu1.Items.Items[0].Count-3 do

begin

mainmenu1.Items.Items[0].Items[i].OnClick:=button1.OnClick;

end;

end;

procedure TForm1.exe;

begin

showmessage('选中 ');

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

exe;

end;

end.




添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.