none
Mause İle tık yapmak.

    Soru

  • Mause İmlecini kullanmadan DİKKAT (MAUSEYİ KULANMADAN DEMİYORUm) mause imlecini kullanmadan   örnegin    20,20 koordinatına nasıl fare sol tuş tık gönderebilrim. YARDIMCI OALCAK ARKADAŞLARA TEŞEKKÜRLER KOLAY GELSİN
    03 Haziran 2012 Pazar 15:17

Yanıtlar

Tüm Yanıtlar

  • using System.Windows.Forms;
    using System.Runtime.InteropServices;
    
    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
            public static class VirtualMouse
            {
                [DllImport("user32.dll")]
                 static extern void mouse_event(int dwFlags, int dx, int dy, int dwData, int dwExtraInfo);
                private const int MOUSEEVENTF_MOVE = 0x0001;
                private const int MOUSEEVENTF_LEFTDOWN = 0x0002;
           private const int MOUSEEVENTF_LEFTUP = 0x0004;
          private const int MOUSEEVENTF_RIGHTDOWN = 0x0008;
                private const int MOUSEEVENTF_RIGHTUP = 0x0010;
        private const int MOUSEEVENTF_MIDDLEDOWN = 0x0020;
                private const int MOUSEEVENTF_MIDDLEUP = 0x0040;
                private const int MOUSEEVENTF_ABSOLUTE = 0x8000;
            }
            public static void Move(int xDelta, int yDelta)
            {
                mouse_event(MOUSEEVENTF_MOVE, xDelta, yDelta, 0, 0);
            }
            public static void MoveTo(int x, int y)
            {
                mouse_event(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE, x, y, 0, 0);
            }
            public static void LeftClick()
            {
             mouse_event(MOUSEEVENTF_LEFTDOWN, Control.MousePosition.X, Control.MousePosition.Y, 20, 20);
                mouse_event(MOUSEEVENTF_LEFTUP, Control.MousePosition.X, Control.MousePosition.Y, 20, 20);
            }
    
            
        }
    }
    

    Yukarıdaki kodları bir denermisiniz   DLL import etmen gerekli eğer olmazsa aşağıdaki linkleri inceleyin 
    Link 3 Link 2  Link 1  

    Umarım işinize yarar
    Kolay Gelsin....



    erenbozarik[at]hotmail[nokta]com

    03 Haziran 2012 Pazar 17:28
  • Hocam bu sistemlerde İlk mause imleci koordinata gidiyor ardından tıklıyor . BENİM YAPMAK İSTEDİGİM İMLEC GİTMEDEN O KOORDİNATA TIKLAMAK henüz bi sonuc alamadım LİNKLERDE Bİ SONUCA ULAŞTIRMADI MLSF :S
    03 Haziran 2012 Pazar 18:25
  • Yukarıdaki işlemden önce cursoru görunmez yap yada cursor iconunu tamamen seffaf bir icon ile anlık değiştir. tıklama eyleminden sonra tekrar eski haline alırsın.
    05 Haziran 2012 Salı 00:16
  • AMAC  CURSORUN GÖRÜNMESİVEYA GÖRÜNMEMESİ DEİL AMAC tıklama işlemi yapılırken kullanıcı bilgisayarda diger işlerini gerçekleştirebilecek (:
    05 Haziran 2012 Salı 10:14
  • Günceldir..

    Tek amacım Ekmek param Programcılık zor iş derler Parası yok derlerdi inanmazdım Saglık olsun

    05 Haziran 2012 Salı 17:18
  • Merhaba Yaşar,

    using System;

    using System.Windows.Forms;

    using System.Runtime.InteropServices;

    public class Form1 : Form
    {
    [DllImport(
    "user32.dll",CharSet=CharSet.Auto, CallingConvention=CallingConvention.StdCall)]
    publicstaticexternvoid mouse_event(long dwFlags, long dx, long dy, long cButtons, long dwExtraInfo);

    private const int MOUSEEVENTF_LEFTDOWN = 0x02;
    private const int MOUSEEVENTF_LEFTUP = 0x04;
    private const int MOUSEEVENTF_RIGHTDOWN = 0x08;
    private const int MOUSEEVENTF_RIGHTUP = 0x10;

    public Form1()
    {
    }

    publicvoid DoMouseClick()
    {
    //fonksiyonun çağırılması fare imlecinin on anki poziyonu için
    int X = Cursor.Position.X;
    int Y = Cursor.Position.Y;
    mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, X, Y,
    0, 0);
    }

    //.diğer kodlar
    }


    I compute therefore I am

    05 Haziran 2012 Salı 18:57
  • //fonksiyonun çağırılması fare imlecinin on anki poziyonu için

    yasar tunc Mause İmlecini kullanmadan

    Merhaba hocam  MAUSE İMLECİ KULLANMADAN DEMEK İSTİYORUM ÖRNEGİN ATIYORUM 50,73 NOKTASINA FARE SOL TUŞU TIKLANACAK FAKAT MAUSE İMLECİ KULLANMADAN tıklanılacak (:


    Tek amacım Ekmek param Programcılık zor iş derler Parası yok derlerdi inanmazdım Saglık olsun

    05 Haziran 2012 Salı 19:27
  • Merhaba Yasar ,

    Yani program 50 , 73 koordinatına gidecek orda button varsa tıklıycak mouse imleci görünmüycek ? Bu programla yapmak isteğin nedir mümkünse  biraz daha açarmısın ? 

    kolay gelsin 


    I compute therefore I am

    05 Haziran 2012 Salı 19:51
  • anladığım kadarıyla makro yazmak istiyor ama makro arkada çalışırken o günlük pc işlerine devam etmeyi planlıyor.

    kendi kullandığı donanımsal mouse haricinde aynı anda çalışan sanal bir mouse eventine ihtiyacı var gibi geldi bana 
    • Düzenleyen ICCCP 05 Haziran 2012 Salı 20:11
    05 Haziran 2012 Salı 20:10
  • Merhaba Yaşar ,

     20,20 koordinatına gitmek için ; 

    [System.Runtime.InteropServices.DllImport("user32.dll")]
    public static extern void mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo);

    public const int MOUSEEVENTF_LEFTDOWN = 0x02;
    public const int MOUSEEVENTF_LEFTUP = 0x04;
    public const int MOUSEEVENTF_RIGHTDOWN = 0x08;
    public const int MOUSEEVENTF_RIGHTUP = 0x10;

    public void MouseClick()
    {
    int x = 20;
    int y = 20;

    mouse_event(MOUSEEVENTF_LEFTDOWN, x, y, 0, 0);
    mouse_event(MOUSEEVENTF_LEFTUP, x, y, 0, 0);
    }

    Kolay Gelsin


    I compute therefore I am


    05 Haziran 2012 Salı 20:29
  • Ömer bey evet  Bircok yerde ihtiyac gerekiyor  2 MAUSELİ BİR BİLGİSAYARINIZ OLSA NE GÜZEL OLURDU HESABI. 1ini otmatik digerini istediginiz gibi. bircok yerde lazım oldu degişik şekillerde oyüzden bi ihtiyacdan arıyorum

    Mustafa bey ilginiz için cok teşekkür ederim ama  verdiginiz sistemde  FARE İMLECİ NERDEYSE ORAYA TIKLIYOR :)  soruyu anlamadınız die düşünürek tekrar söyleyeyim  20,20 NOKTASINA TIKLANIRKEN BİZ İMLEC İ İSTEDİGİMİZ GİBİ KULALNABİLECEZ İMLECTEN BAGIMSIZ Bİ OLAY GİBİ DÜŞÜNÜN. kolay gelsin


    Tek amacım Ekmek param Programcılık zor iş derler Parası yok derlerdi inanmazdım Saglık olsun

    05 Haziran 2012 Salı 21:14
  • public partial class Form1 : Form
    {
        [DllImport("user32.dll")]
        private static extern IntPtr SendMessage(IntPtr hWnd, int Msg,
            IntPtr wParam, IntPtr lParam);

        [DllImport("user32.dll", EntryPoint = "WindowFromPoint",
            CharSet = CharSet.Auto, ExactSpelling = true)]
        public static extern IntPtr WindowFromPoint(Point point);

        private const int BM_CLICK = 0x00F5;

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            // nereye tıklamak isteiğimizi göster
            var screenPoint = this.PointToScreen(new Point(button2.Left,
                button2.Top));

            // Ele alma işlemi

            var handle = WindowFromPoint(screenPoint);

            // tıklama  mesajı gönderimi
            if (handle != IntPtr.Zero)
            {
                SendMessage( handle, BM_CLICK, IntPtr.Zero, IntPtr.Zero);
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            MessageBox.Show("MErhaba", " Burdayım");
        }
    }


    I compute therefore I am

    06 Haziran 2012 Çarşamba 09:46
  • Hocam merhabalar ben Sorumda buttona tıklansın die bişey demedim fakat bu örneginizide afişledim teşekkür ederim fakat sorumu tekrar güncellemek istiyorum   atıyorum benim belgelerim klasorumun yeri 20,20 koordinatında  ben eski verilen kodlarla imleci 20,20 ışınlandıktan sonra cift tıkla actırabiliyorum  buraya dikkat imlec ışınlanıp yani imleci 20,20 noktasına taşıdıktan sonra.  BENİM AMACIM NEDİR. 20,20 NOKTAISNA GENE TIKLAMA YAPABİLEYİM FAKAT BUNU İMLEC KULLANMADAN YANİ İMLECİ BİYERLERE TAŞIMADAN YAPABİLEYİM.

    not olarak belirteyim gene yanlış anlaşılmasın 20,20 noktasını kafama göre söyledim sadece örnektir her koordinat olabilir

    2.olarak BELGELERİM ACILSIN DERKEN BELGELERİMİ BİRCOK ŞEKİLDE ACILABİLİR BEN SADECE ÖRNEK OLARAK VERDİM..

    Umarım sorum sonunda anlaşımıştır :S


    Tek amacım Ekmek param Programcılık zor iş derler Parası yok derlerdi inanmazdım Saglık olsun

    06 Haziran 2012 Çarşamba 09:57
  • Yasar bey , 

    O zaman siz iki mouse kullanmak istiyorsunuz birincisi sanal olcak arkaplanda çalışcak ve imleci gözükmüycek  , ikincisi normal donanım olarak siz kendiniz kontrol ediceksiniz umarım doğru anlamışımdır. Yazmak istediğiniz programın adımlarını basamak basamak yazabilirseniz size daha iyi yardımcı olabilirim.

    iyi çalışmalar


    I compute therefore I am

    06 Haziran 2012 Çarşamba 20:10
  • Mustafa bey aynen dediginiz gibi.  BUNUN HARİCİNDE Bİ OLAY GEREKMİYOR.. (:
    06 Haziran 2012 Çarşamba 20:42
  • Merhaba Yaşar Bey ,

    Aşağıdaki linklere bir bakın  çoklu mouse için microsoft un Yazılım Geliştirme kitinde(SDK) vardır. 

    http://www.microsoft.com/multipoint/mouse-sdk/

    http://www.microsoft.com/multipoint/mouse-sdk/developer.aspx

    http://msdnnepal.net/blogs/nutan/archive/2009/11/27/series-2-initializing-multipoint.aspx

    iyi günler 

    I compute therefore I am 

    MSDN FORUM ASİSTANINI HEMEN INDIRIN 






    11 Haziran 2012 Pazartesi 17:14