Delphi带导航菜单的主界面实例
带导航菜单的主界面
实例说明
在窗体界面中,菜单栏是不可缺少的重要组成部分。该实例是用其他的组件来制作一个模拟菜单栏。在程序运行后,单击窗体上面的按钮,将会在按钮的下面显示一个下拉列表,如图1.13所示

技术要点
在该实例中,将PopupMenu控件以鼠标单击的形式显示下拉菜单,用到了PopupMenu控件的Popup方法,其功能是右击鼠标时使PopupMenu控件出现在Popup方法指定的位置。
在向ListView组件添加菜单信息时,必须在前面写入添加语句,如Listview1.Items.Add,否则添加的菜单信息将替换前一条信息。在单击相应的按钮时,应先将ListView组件清空,否则在ListView组件中将继续推进上一次的菜单信息。
实现过程
1.新建一个标准工程,创建一个新窗体,设置窗体的Name属性为mainform.
2.添加TImage、TSpeedButton、TPopupmenu、TListView、TImageList和TTimer组件。
3.相关组件的主要属性如表1.3所示。

表1.3 主要增加的属性设置
4.主要程序代码如下:
procedure Tmainform.FormShow(Sender: TObject);
begin
mainform.StatusBar1.Panels[0].Text :='欢迎您进入明日房地产信息管理系统';
end;
procedure Tmainform.Timer1Timer(Sender: TObject);
begin
mainform.StatusBar1.Panels[2].Text :='现在时间: '+datetimetostr(now);
end;
procedure Tmainform.N27Click(Sender: TObject);
begin
toolbar1.Show;
end;
procedure Tmainform.BitBtn1Click(Sender: TObject);
var
newitem:Tlistitem;
begin
if panel3.Align=altop then
begin
panel4.Align:= albottom;
panel5.Align:= albottom;
Panel6.Align:= albottom;
panel7.Align:= albottom;
end
else
panel3.Align:=altop;
Listview1.Clear;
newitem:=listview1.Items.Add;
newitem.Caption:='房屋销售管理';
newitem.ImageIndex:=1;
newitem:=listview1.Items.Add;
newitem.Caption:='房屋销售收款管理';
newitem.ImageIndex:=2;
newitem:=listview1.Items.Add;
newitem.Caption:='客户资料管理';
newitem.ImageIndex:=3;
newitem:=listview1.Items.Add;
newitem.Caption:='房屋销售收款安排查询';
newitem.ImageIndex:=4;
newitem:=listview1.Items.Add;
newitem.Caption:='房屋退款管理';
newitem.ImageIndex:=5;
end;
procedure Tmainform.BitBtn2Click(Sender: TObject);
var
newitem:Tlistitem;
begin
if panel4.Align=altop then
begin
panel3.Align:= albottom;
panel5.Align:= albottom;
Panel6.Align:= albottom;
panel7.Align:= albottom;
end
else
panel4.Align:=altop;
Listview1.Clear;
newitem:=listview1.Items.Add;
newitem.Caption:='销售代表房屋销售统计报表';
newitem.ImageIndex:=6;
newitem:=listview1.Items.Add;
newitem.Caption:='楼盘销售预订数据统计报表';