以前写的一个代码,贴给你看看[
]
//------------------------------------------------------------------------------
// 司马华鹏
// 创建窗口
procedure TfrmMain.FormCreate(Sender: TObject);
var
mnuSection:TMenuItem;
mnuValue:TMenuItem;
lstSection:TStringList;
lstValues:TStringList;
i,j:integer;
strTmp:string;
begin
try
DropURLTarget1:=TDropURLTarget.Create(nil);
DropURLTarget1.OnDrop:=DropURLTarget1Drop;
DropURLTarget1.Register(cbAddr);
lstMenuItems:=TStringList.Create;
lstMenuItems.Add('http://www.lanseal.com.cn');
With TIniFile.Create(ExtractFilePath(GetAppName) + 'Menu.ini') do
try
lstSection:=TStringList.Create;
try
lstValues:=TStringList.Create;
try
ReadSections(lstSection);
for i:=0 to lstSection.Count-1 do
begin
mnuSection:= TMenuItem.Create(Self);
mnuSection.Caption :=lstSection.Strings
;
mnuSection.ImageIndex:=6;
PopMenu.Items.Add(mnuSection); // 在菜单项下添加子菜单
ReadSectionValues(mnuSection.Caption,lstValues); // 读取子项目
for j:=0 to lstValues.Count-1 do
begin
mnuValue:=TMenuItem.Create(Self);
strTmp:=lstValues.Strings[j];
mnuValue.Caption:=Copy(strTmp,1,Pos('=',strTmp)-1);
mnuValue.ImageIndex:=6;
mnuValue.OnClick:=mnuUrlLansealClick; // 自定义菜单要响应的事件
mnuValue.Tag:=lstMenuItems.Count;
lstMenuItems.Add(Copy(strTmp,Pos('=',strTmp)+1,Length(strTmp)));
mnuSection.Add(mnuValue); // 在菜单项下添加子菜单
end;
end;
finally
lstValues.Free;
end;
finally
lstSection.Free;
end;
finally
Free;
end;
except
end;
end;