LinkedIn FriendFeed Twitter

C# Mouse Events

by Ordinaryus 8. January 2010 23:34

In C# programming using mouse events is a need for many programmer. Using C#, Mouse positions can be easily used but, we can’t change mouse position or create mouse click.

There is a solutions for this problem. We can use DllImport to access windows APIs, so we can both change mouse position and create click event.

I write a Mouse class because of this need. We can access mouse position, set cursor coordinates and create left and right click events.

    class Fare
    {
        [DllImport("user32.dll")]
        private static extern void mouse_event(UInt32 dwFlags, UInt32 dx, UInt32 dy, 
        UInt32 dwData, IntPtr dwExtraInfo);
        
        [DllImport("user32.dll")]
        static extern bool SetCursorPos(int x, int y);
        
        private const UInt32 MouseEventLeftDown = 0x0002;
        private const UInt32 MouseEventLeftUp = 0x0004;
        private const UInt32 MouseEventRightDown = 0x0008;
        private const UInt32 MouseEventRightUp = 0x0010;

        static public int konumX
        {
            get { return System.Windows.Forms.Control.MousePosition.X; }
        }

        static public int konumY
        {
            get { return System.Windows.Forms.Control.MousePosition.Y; }
        }


        public static void SendLeftClick()
        {
            mouse_event(MouseEventLeftDown, (uint)konumX, (uint)konumY, 0, new System.IntPtr());
            mouse_event(MouseEventLeftUp, (uint)konumX, (uint)konumY, 0, new System.IntPtr());
        }

        public static void SendRightClick()
        {
            mouse_event(MouseEventRightDown, (uint)konumX, (uint)konumY, 0, new System.IntPtr());
            mouse_event(MouseEventRightUp, (uint)konumX, (uint)konumY, 0, new System.IntPtr());
        }

        public static void SendMouseDown()
        {
            mouse_event(MouseEventLeftDown, (uint)konumX, (uint)konumY, 0, new System.IntPtr());
        }

        static public void SetFare(int x, int y)
        {
            SetCursorPos(x,y);
        }
    }

Tags: ,

Add comment




  Country flag

biuquote
  • Comment
  • Preview
Loading



Powered by BlogEngine.NET 1.5.0.7
Theme by Mads Kristensen

Ordinaryus Hakkında


Hayata gözlerini İzmirde açtı. 3 yaşında legolarla oynadı =) Küçük yaşta baskete başladı zaten başka sporlarla arası hiç olmadı. Orta okulda matematikle ilgilendi. Liseyi Karşıyaka Anadolu Lisesinde okudu. 

2006da İTÜ Elektronik Mühendisliğini kazandı. Sonrasında Fizik bölmünde çift anadala kabul oldu. Fantazi olarak fzik dersleri alıyor. Biryandan da kuluplere saldırdı. Öğrendi, öğrendiklerini paylaştı. Ara sıra ineklik etti, etmekte =)

Yazılımı sevdi... Odur budur derken yolunu çizmeye çalıştı. Hala da çalışıyor..

2008te MSP oldu belkide bu blogu yazmaya başlamamda en büyük etken=) Zamanla yazılım dünyasında Ordinaryus olmayı hedeflemekte =) 

Yapay Zeka, Görüntü İşleme, Kuantum Mekaniği, Bilişsel Bilimlerle ilgili. Geceleri öle kafasına göre takılıyo. Sabahlarıda öğrencilik yapıyo =)

gibi gibi... 

 

Page Rank

Şuan ne okuyorum

Bilişsel Psikoloji

Ramayla Buluşma


Ayrıca okuduklarımdan seçtiğim kitaplara buradan ulaşabilirsiniz..

Okuduklarımı üye olarak takip etmek için ise aşağıdaki RSS bağlantısını kullanabilirsiniz. Ayrıca bana kitapta hediye edebilirsiniz =)


Google Translate


CCL


Copyright © Ordinaryus Says That by http://www.vypro.org/ is licensed under a Creative Commons Attribution-No Derivative Works 3.0