Чтобы получить положение мыши в C#, вы можете использовать различные методы в зависимости от контекста вашего приложения. Вот некоторые распространенные подходы:
Метод 1: использование Windows Forms
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
int mouseX = e.X;
int mouseY = e.Y;
// Use mouseX and mouseY as needed
}
Метод 2: использование WPF (Windows Presentation Foundation)
private void Window_MouseMove(object sender, MouseEventArgs e)
{
Point mousePos = e.GetPosition(this);
double mouseX = mousePos.X;
double mouseY = mousePos.Y;
// Use mouseX and mouseY as needed
}
Метод 3: использование Win32 API
[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
private static extern bool GetCursorPos(out POINT lpPoint);
private struct POINT
{
public int X;
public int Y;
}
private void GetMousePosition()
{
POINT cursorPos;
if (GetCursorPos(out cursorPos))
{
int mouseX = cursorPos.X;
int mouseY = cursorPos.Y;
// Use mouseX and mouseY as needed
}
}
Метод 4. Использование глобального крючка мыши (требуется дополнительная настройка)
private void StartMouseHook()
{
MouseHook.Start();
MouseHook.MouseMoveEvent += MouseHook_MouseMoveEvent;
}
private void StopMouseHook()
{
MouseHook.Stop();
MouseHook.MouseMoveEvent -= MouseHook_MouseMoveEvent;
}
private void MouseHook_MouseMoveEvent(object sender, MouseEventArgs e)
{
int mouseX = e.X;
int mouseY = e.Y;
// Use mouseX and mouseY as needed
}
Эти методы предоставляют различные способы получения положения мыши в C#. Выберите тот, который лучше всего соответствует требованиям вашего приложения.