这么没人回,我在线,答对马上给分。
我有调试了一下发现TreeView是先弹出菜单后触发MouseDown事件,这怎么办???

解决方案 »

  1.   

    这么没人回,我在线,答对马上给分。
    我有调试了一下发现TreeView是先弹出菜单后触发MouseDown事件,这怎么办???
      

  2.   

    这么没人回,我在线,答对马上给分。
    我有调试了一下发现TreeView是先弹出菜单后触发MouseDown事件,这怎么办???
      

  3.   

    这样的程序我尝试过没有问题的
    你是怎么做的
    MouseDown事件里为什么没有触发popup事件
      

  4.   

    这样的程序我尝试过没有问题的
    你是怎么做的
    MouseDown事件里为什么没有触发popup事件
      

  5.   

    procedure TreeViewMouseDown(Sender: TObject;
      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    var
            HT: THitTests;
            P_X,P_Y: Integer;
    begin
            if Button=mbRight then
            with TreeView do
            begin
                    HT:=GetHitTestInfoAt(X,Y);
                    if htOnItem in HT then
                    begin
                            Selected:=GetNodeAt(X,Y);
                            P_X:=X+Panel2.Left;
                            P_Y:=Y+Panel2.Top+26;
                            PM_Tree.Popup(P_X,P_Y);
                    end;
            end;
    end;
      

  6.   

    是这样的,我发觉第一次右击treeview,我发觉它先弹出菜单,如果我在点击其它地方mouseDown才触发。
      

  7.   

    我是选定treeview的popupmenu为我的弹出菜单的
      

  8.   

    我又试了一下
    没有问题,第一次右击TreeView就可以出菜单你有什么特殊的设置么
      

  9.   

    我知道了
    不能设置popupmenu属性
    要在mousedown事件里触发
      

  10.   

    我知道了
    不能设置popupmenu属性
    要在mousedown事件里触发
      

  11.   

    PopupMenu1.Popup(x,y)
    用x,y来调整糖出位置