急,如何定义事件(50分)

  • 主题发起人 babieboy
  • 开始时间
B

babieboy

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大侠,小弟我自己动态创建了一个Menu,如何定义它的onclick事件,使得我点击菜单时
可以做我定义的事件,请稍附带点源码,谢谢!!!
 
procedure TDBMDIChildForm.SortFields(Sender: TObject);
//菜单事件,按字段排序
begin
inherited;
if TComponent(sender).Tag=-1 then
SortField(ADSMaster,sMasterSortFields,'')
else
SortField(ADSMaster,sMasterSortFields,TMenuItem(sender).Hint);
end;

procedure TDBMDIChildForm.MasterAfterOpen(DataSet: TDataSet);
//主表打开后生成排序菜单
var
i:integer;
mi:TMenuItem;
begin
inherited;
for i:=0 to adsMaster.FieldCount -1 do
begin
mi:=TMenuItem.Create(self);
with mi do
begin
Caption := adsMaster.Fields.FieldName;
Hint := adsMaster.Fields.FieldName;
Tag := i;
OnClick := SortFields;//指定事件
end;
pmSortField.Items.Add(mi);
end;
end;
 

MenuItem.onClick := myClick;
 
樓上的已經給出答案了!
 
顶部