PDA

View Full Version : [c#] Coordinate del mouse in tempo reale


s1m0_93
20-04-2010, 20:25
Ciao a tutti,
Sto facendo un semplicissimo programma in visual c# per far visualizzare le coordinate del mouse in tempo reale




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
public partial class frm_1 : Form
{
public frm_1()
{
InitializeComponent();
}



void Form1_Load(object sender, EventArgs e)
{
}


protected override void OnMouseMove(MouseEventArgs mouseEv)
{
lbl_1.Text = mouseEv.X.ToString();
lbl_2.Text = mouseEv.Y.ToString();
}

}



}


Questo è il codice che ho scritto finora. Le coordinate le fa vedere senza problemi, però solo se rimango all'interno del Form.
Sapete come posso farle aggiornare mentre il mouse è fuori dal Form?

!k-0t1c!
21-04-2010, 09:38
Il modo più efficiente è sicuramente un global hook.
Per semplificarti la vita puoi usare il codice che trovi qui: http://www.codeproject.com/KB/cs/globalhook.aspx
In alternativa potresti avere un thread in background che fa il polling delle coordinate ogni X millisecondi e aggiorna il form, ma è uno spreco di risorse molto significativo.