/// <summary> /// Form3取消按钮单击事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Form3Cancle_Btn_Click(object sender, EventArgs e) { // 获取Form3窗体句柄 IntPtr form3Handle = WinApiServer.FindWindow(null, "Form3"); if (form3Handle == IntPtr.Zero) { if (MainWindows != IntPtr.Zero) { // Form2中"打开Form3"按钮句柄 IntPtr openForm3Handle = Command.Findview(MainWindows, null, "打开Form3"); // 打开Form3 Command.BtnLeftClick(openForm3Handle); // 获取Form3窗体句柄 form3Handle = WinApiServer.FindWindow(null, "Form3"); } } IntPtr form3CancleHandle = Command.Findview(form3Handle, null, "这是Form3的取消按钮"); // 单击 Command.BtnLeftClick(form3CancleHandle); }
/// <summary> /// Form3确定按钮单击事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Form3Ok_Btn_Click(object sender, EventArgs e) { // 获取Form3窗体句柄 IntPtr form3Handle = WinApiServer.FindWindow(null, "Form3"); if (form3Handle == IntPtr.Zero) { if (MainWindows != IntPtr.Zero) { // Form2中"打开Form3"按钮句柄 IntPtr openForm3Handle = Command.Findview(MainWindows, null, "打开Form3"); // 打开Form3 Command.BtnLeftClick(openForm3Handle); // 获取Form3窗体句柄 form3Handle = WinApiServer.FindWindow(null, "Form3"); } // 如果为空,先打开Form2,层层递归,打开目标按钮所在窗体,获取按钮句柄,暂省略... } IntPtr form3OKHandle = Command.Findview(form3Handle, null, "这是Form3的确定按钮"); // 单击 Command.BtnLeftClick(form3OKHandle); }