문제

okay so what I want to do, it when the mouse is HELD DOWN I want it to continously press a key. it should continously press this key until I let off.

Imagine if you will, a left and right button on a windows form, then by clicking and holding the right button, the letter "R" displays on a textbox continously until you release the button. What I am doing has very little to do with that scenario, but you get what I'm trying to do here.

What exactly do I put in the mouse down to keep the sendkeys going forever without locking up the application?

I hope my question makes sense. lol.

Thanks

RT

private void pictureBoxKeyboard_MouseDown(object sender, MouseEventArgs e)
{
//something goes here
}
도움이 되었습니까?

해결책

This is worth a read...

http://msdn.microsoft.com/en-us/library/ms171548.aspx

SendKeys.Send("r")

This might just fire once, you may want to attach a timer that starts on the MouseDown event and stops on the MouseUp event. Then you could put the SendKeys in the Timer.Tick event.

    private void Form1_Load(object sender, EventArgs e)
    {
        this.timer1.Interval = 500;
    }

    private void button1_MouseUp(object sender, MouseEventArgs  e) 
    {
        timer1.Stop();
        this.Text = "moose-Up";
    }

    private void button1_MouseDown(object sender, EventArgs e)
    {
        timer1.Start();
        this.Text = "moose-Down";
        this.richTextBox1.Select();
    }

    private void timer1_Tick(object sender, EventArgs e)
    {
        SendKeys.Send("r");
        Debug.Print("tickling");
    }

Select the control that you wish to receive the SendKeys value...

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top