封装一个下拉多选框的控件. TCheckedComboBox
需要封装一个右键菜单进去. 实现右键全选和取消全选功能.
procedure TNovaCheckedComboBox.initPopmenu;
begin
// popmenu
FPopmenu := TPopupMenu.Create(Self);
FPopmenu.Items.Add(NewItem('全选',0,False,True,Fitem1Click,0,'FItem1'));
FPopmenu.Items.Add(NewItem('取消',0,False,True,Fitem2Click,0,'FItem2'));
Self.PopupMenu := FPopmenu;
end;
procedure TNovaCheckedComboBox.Fitem1Click(Sender : TObject);
begin
Self.CheckAll(True);
end;
procedure TNovaCheckedComboBox.Fitem2Click(Sender : TObject);
begin
Self.CheckAll(False);
end;
以上是代码.
initPopmenu方法在控件初始化时调用.
不知道为什么不生效.