|
发表于 2008-1-24 00:24:00
|
显示全部楼层
不知老兄是否解决问题了?我的方法比较复杂,就是模拟鼠标在CAD屏幕上点击一下。
using System.Diagnostics;
加上
[DllImport("User32")]
public extern static void mouse_event(int dwFlags, int dx, int dy, int dwData, IntPtr dwExtraInfo);
[DllImport("User32")]
public extern static void SetCursorPos(int x, int y);
[DllImport("User32")]
public extern static bool GetCursorPos(out POINT p);
[DllImport("User32")]
public extern static int ShowCursor(bool bShow);
public struct POINT
{
public int X;
public int Y;
}
[Flags]
public enum MouseEventFlags
{
Move = 0x0001,
LeftDown = 0x0002,
LeftUp = 0x0004,
RightDown = 0x0008,
RightUp = 0x0010,
MiddleDown = 0x0020,
MiddleUp = 0x0040,
Wheel = 0x0800,
Absolute = 0x8000
}
//==========================================模拟鼠标左键点击
private void AutoMouseLeftClick(int x,int y)
{
int dx = 0;
int dy = 0;
mouse_event((int)(MouseEventFlags.LeftDown | MouseEventFlags.Absolute), dx, dy, 0, IntPtr.Zero);
mouse_event((int)(MouseEventFlags.LeftUp | MouseEventFlags.Absolute), dx, dy, 0, IntPtr.Zero);
}
|
|