C # / Kinect Управление курсором мыши - PullRequest
1 голос
/ 02 ноября 2011

Если бы я хотел управлять курсором мыши, включая нажатие и т. Д., Какой API мне нужно было бы использовать для этого?Например, я разрабатываю приложение для ПК с использованием Kinect, и я хочу управлять этим курсором мыши, а не создавать собственный курсор в приложении.Что бы мне понадобилось, чтобы добиться этого?

Спасибо.

1 Ответ

2 голосов
/ 02 ноября 2011

См. Ответ Маркоса Плакона в: Как смоделировать щелчок мыши в C #?

Теперь вам нужно только добавить события перемещения мыши.Больше информации здесь: http://pinvoke.net/default.aspx/user32.mouse_event

using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;

public class Form1 : Form
{
   [DllImport("user32.dll",CharSet=CharSet.Auto, CallingConvention=CallingConvention.StdCall)]
   public static extern void mouse_event(uint dwFlags, uint dx, uint dy, uint cButtons, uint dwExtraInfo);

   private const int MOUSEEVENTF_LEFTDOWN = 0x02;
   private const int MOUSEEVENTF_LEFTUP = 0x04;
   private const int MOUSEEVENTF_RIGHTDOWN = 0x08;
   private const int MOUSEEVENTF_RIGHTUP = 0x10;

   public Form1()
   {
   }

   public void DoMouseClick()
   {
      //Call the imported function with the cursor's current position
      int X = Cursor.Position.X;
      int Y = Cursor.Position.Y;
      mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, X, Y, 0, 0);
   }

   //...other code needed for the application
}
...