2012-06-18 15 views
5

Ho bisogno di ottenere la dimensione del rettangolo del cursore classico di Windows.Come ottenere la dimensione del cursore in C#

Come posso ottenere la dimensione del cursore in C#?

+0

per WPF è possibile vedere: http://stackoverflow.com/questions/8038853/how-can- i-define-the-cursor-size-in-wpf –

risposta

9

È possibile utilizzare Cursor.Size:

int cursorWidth = Cursor.Size.Width; 
int cursorHeight = Cursor.Size.Height; 

Sì, è davvero così semplice!

Spero che questo aiuti!

+0

La dimensione del cursore NON è la dimensione attuale del cursore. è la dimensione dell'immagine. La dimensione del cursore è 32x32 per impostazione predefinita ma il cursore visivo effettivo è 16x20 – Franck

+0

Correzione la dimensione è 13x20 – Franck

2

Un piccolo esempio: Reference

 if(this.Cursor != Cursors.Hand & 
     Cursor.Current == Cursors.Default) 
     { 
      // Draw the cursor stretched. 
      Graphics graphics = this.CreateGraphics(); 
      Rectangle rectangle = new Rectangle(
      new Point(10,10), new Size(cursor.Size.Width * 2, 
      cursor.Size.Height * 2)); 
      cursor.DrawStretched(graphics, rectangle); 


     // Draw the cursor in normal size. 
     rectangle.Location = new Point(
     rectangle.Width + rectangle.Location.X, 
     rectangle.Height + rectangle.Location.Y); 
     rectangle.Size = cursor.Size; 
     cursor.Draw(graphics, rectangle); 

     // Dispose of the cursor. 
     cursor.Dispose(); 
    } 
+0

Questo è un sacco di codice per mostrare come usare 'cursor.Size.Width/Height' – Default

+0

@Default: hmm ... true –

+0

Se posso venire con un suggerimento, vorrei neanche spiegare perché avete così tanto codice o ridurre al minimo esso (dal momento che è un buon esempio, se si desidera mostrare un utilizzo effettivo del 'Cursor.Size') – Default

Problemi correlati