RzcheckTree中有很多节点,如何做到对不同级的节点,右键弹出的菜单不同,请高手给予指点!

解决方案 »

  1.   

    根据level判断,不要指定popmenu,自己用popmenu.popup弹
      

  2.   

    可以说的详细一点儿嘛,还有rzchecktree,当点击里面的某一节点的时候,会变蓝,这是改变节点的状态了嘛,是否触发某一事件?
      

  3.   

    右击RzCheckTree的时候:
    if RzCheckTree.Selected <> nil then
      case RzCheckTree.Selected.Level of
        0: PopupMenu1.Popup(...);
        1: PopupMenu2.Popup(...);
      end;
      

  4.   

    右键触发了rzchecktree里的那个事件啊,还有popup中的参数是对应菜单弹出的位置,这个参数怎么定义好些?^_^
      

  5.   

    procedure TForm1.RzCheckTree1MouseDown(Sender: TObject;
      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    var
      P:TPoint;
    begin
      if RzCheckTree1.Selected=nil then exit;
      if button=mbRight then
      begin
        P:=mouse.CursorPos;
        case RzCheckTree1.Selected.Level of
          0:popupmenu1.Popup(p.X,p.Y);
          1:popupmenu2.Popup(p.X,p.Y);
        end;
      end;
    end;