TreeView有DblClick,Click事件
可是我想要的是,单击,双击在节点上,不知道怎么做?我直接用TreeViewDblClick。。这样的话,只要鼠标在TreeView的方框内击,那么都会执行
我只想要在节点上单双击会执行,其他空白处不执行谢谢

解决方案 »

  1.   

    procedure TForm1.TreeView1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      if TreeView1.GetNodeAt(x,y)<>nil then
      begin
      end;
    end;
      

  2.   

    有个好像有个GetNodeAt的函数,你试试就知道了。
      

  3.   

    谢谢上面的,不过如果是Click,还得加上这个pt:=mouse.CursorPos;
      pt:=TreeView1.ScreenToClient(pt);   // 必须转换到TreeView的坐标,GetNodeAt(x,y)是相对于Tr的现在才知道原来MouseDown的X,Y是相对于Client区的,原来一直以为是屏幕的呢 呵呵收工结帖