【解決方法】マウスのクリックをシミュレートする


こんにちは、みんな。 Windows フォームでプロジェクトに取り組んでおり、マウス クリックをシミュレートする必要があります。 テキストボックスから座標を取得し、ボタンを押した後、ダブルクリックする必要がありますが、残念ながらクリックしません。 理由を言える人はいますか? コードは次のとおりです。

C#
[DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]
        public static extern void mouse_event(uint dwFlags, int dx, int dy, int dwData, int dwExtraInfo);

        private const int MOUSEEVENT_LEFTDOWN = 0x0002;
        private const int MOUSEEVENTF_LEFTUP = 0x0004;
        private const int MOUSEEVENTF_RIGHTDOWN = 0x0008;
        private const int MOUSEEVENTF_RIGHTUP = 0x0010;
        private const int MOUSEEVENTF_ABSOLUTE = 0x8000;

        private void button2_Click(object sender, EventArgs e)
        {
            int x = Convert.ToInt32(textBox1.Text);
            int y = Convert.ToInt32(textBox2.Text);
                mouse_event(MOUSEEVENT_LEFTDOWN, x, y, 0, 0);
                mouse_event(MOUSEEVENTF_LEFTUP, x, y, 0, 0);
                mouse_event(MOUSEEVENT_LEFTDOWN, x, y, 0, 0);
                mouse_event(MOUSEEVENTF_LEFTUP, x, y, 0, 0);

        }

解決策 1

私なら、変えるね

mouse_event(MOUSEEVENT_LEFTDOWN, x, y, 0, 0);

C#
mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTFLEFTUP, x, y,0,0);

これによると; C#でマウスクリックをシミュレートする方法[^]

コメント

タイトルとURLをコピーしました