问题一:树结点,光标在结点上,我怎么按回车键触发treeView1_NodeMouseClick一样的效果。问题二:怎么用键盘切换tabControl1的不同page?

解决方案 »

  1.   

    在窗体的keyPress 或者keyDown事件中写上你要调用的方法
    如果是回车调用和click的内部方法相同
    按tab  切换不同page
      

  2.   

    用keypress是没错...
    在这里事件中用WindowFrompoint获取当前鼠标位置下面的控件的句柄,如果此句柄跟
    树控件的句柄一样,你就模拟鼠标点击事件SendMessage(树句柄,WM_MouseDown,0,0)
      

  3.   

    要用WINDOW函数才能实现你的要求...
      

  4.   

    你记录下mouse。x和y然后遍历控件,看那个在这个范围里
      

  5.   

    我怎么可能要去记录mouse以后才能用键盘操作?
      

  6.   

    mousemove与我按回车键有关系吗
      

  7.   

    mousemove的时候可以取到mouse的x和y坐标
      

  8.   

    请问你是要鼠标指向某个treenode,然后按下键盘????这样操作么
      

  9.   

    请问你是要鼠标指向某个treenode,然后按下键盘????这样操作么???还是你已经单击选择了一个节点,然后按键盘操作
      

  10.   

    我就不能通过TAB键来移动光标吗???奇怪
      

  11.   

    ........你是指按tab选择的节点就变化了?
      

  12.   

    我的意思是,TAB键切换光标,然后上下移动到树的结点上。
    接下来我想按回车键,让结点能触发treeView1_NodeMouseClick达到一样的效果。
      

  13.   

    不是,要选中的话就是蓝色的那种,如果你选择了的话(就是你的节点是蓝色的话)那你写个方法调用Treeview1.selectNodes就能找到那个被选中了,如果是没有选中,靠鼠标停在那个位置上面的话就要判断鼠标位置和节点位置了
      

  14.   

    用tab有点问题会触发按照tabindex选中控件的问题
      

  15.   

    我的目标只是当我光标通过键盘停在某个结点上的时候,然后按回车,效果与treeView1_NodeMouseClick一样
      

  16.   

    也就是说你节点选中的时候不触发事件,按键盘触发。。那要看你treeView1_NodeMouseClick里怎么写的是有没有通过sender和e取值,如果用e。node的话可以通过treeview。selectnode来找到,你调用treeView1_NodeMouseClick这个写好的方法的话,直接treeView1_NodeMouseClick(null,null)
      

  17.   

    问题是我该在哪个事件里面调用treeView1_NodeMouseClick??
      

  18.   

    第二个问题么你设置tabControl1的ActiveIndex为哪个哪个么就行