『C.』Study... 发表于 2012-6-2 03:37:11

Delphi PopupMenu菜单为ListView的每个Items使用[原创]

本帖最后由 『C.』Study... 于 2012-6-14 11:05 编辑

最近做一个Case就是遇到这样的事,用一个PopupMenu为Listview的子项使用。下面是代码;写的有点乱,不过能用;
第一步先在你的你的Form的OnCretae事件中添加代码;

procedure TForm1.FormCreate(Sender: TObject);
var
i:Integer;
begin
for i:=0 to PopupMenu1.Items.Count -1 do
begin
   PopupMenu1.Items.Visible :=false;
   end;
end;//这个循环的作用是初始化PopupMenu的所有子项为不可见;

procedure TForm1.ListView1ContextPopup(Sender: TObject; MousePos: TPoint;
var Handled: Boolean);
    var
       i, j, s, a:Integer;
begin
    ListView1.Update;
   fori:=0 to ListView1.Items.Count - 1 do
   begin
      if ListView1.Items.Count >0 then
      begin
          for a:=0 to ListView1.Items.Count +1 do
          begin
         if ListView1.SelCount=0 then
         begin
             for j :=0 to PopupMenu1.Items.Count -1 do
               begin
               PopupMenu1.Items.Visible :=False;
               end;
         end
            else
                begin
                  for s:=0 to PopupMenu1.Items.count -1 do
                  begin
                  PopupMenu1.Items.Visible :=True;
                  end;
                end;
      end ;
       // Exit;
      end;
      end;
end;//上面这段代码作用是判断用户选择哪一个ListView的子项,如果是第N个的话当在第N个上面右击鼠标时就会出现PopupMenu菜单,//当然选择一个空子项这个PopupMenu菜单是不会显示的;

Biner 发表于 2012-6-2 07:20:40

{:5_107:}这种东西也拿来混鱼B 。。。。。

sejung 发表于 2012-6-2 08:21:09

delphi版块越来越冷了!急需要人气啊!

Gkimidr_源 发表于 2012-6-2 09:23:49

3333333333333333333333333333333333333

乐yi忘忧 发表于 2012-6-4 09:32:48

好东西应该大家共同分享,鄙视收费。

coko 发表于 2013-7-2 20:42:01

看帖,必须回帖
页: [1]
查看完整版本: Delphi PopupMenu菜单为ListView的每个Items使用[原创]