Cursor.DrawStretched(Graphics, Rectangle) Método

Definição

Desenha o cursor em um formato ampliado na superfície especificada, dentro dos limites especificados.

public:
 void DrawStretched(System::Drawing::Graphics ^ g, System::Drawing::Rectangle targetRect);
public void DrawStretched (System.Drawing.Graphics g, System.Drawing.Rectangle targetRect);
member this.DrawStretched : System.Drawing.Graphics * System.Drawing.Rectangle -> unit
Public Sub DrawStretched (g As Graphics, targetRect As Rectangle)

Parâmetros

g
Graphics

A superfície Graphics na qual o Cursor será desenhado.

targetRect
Rectangle

O Rectangle que representa os limites do Cursor.

Exemplos

O exemplo de código a seguir desenha o cursor especificado no formulário em seu tamanho normal e, no modo estendido, o dobro de seu tamanho. Este exemplo requer que você tenha um Form objeto e Cursor um objeto para passar para o método quando ele for chamado.

void DrawCursorsOnForm( System::Windows::Forms::Cursor^ cursor )
{
   
   // If the form's cursor is not the Hand cursor and the
   // Current cursor is the Default, Draw the specified
   // cursor on the form in normal size and twice normal size.
   if ( this->Cursor != Cursors::Hand && System::Windows::Forms::Cursor::Current == Cursors::Default )
   {
      
      // Draw the cursor stretched.
      Graphics^ graphics = this->CreateGraphics();
      Rectangle rectangle = Rectangle(Point(10,10),System::Drawing::Size( cursor->Size.Width * 2, cursor->Size.Height * 2 ));
      cursor->DrawStretched( graphics, rectangle );
      
      // Draw the cursor in normal size.
      rectangle.Location = Point(rectangle.Width + rectangle.Location.X,rectangle.Height + rectangle.Location.Y);
      rectangle.Size = cursor->Size;
      cursor->Draw( graphics, rectangle );
      
      // Dispose of the cursor.
      delete cursor;
   }
}
private void DrawCursorsOnForm(Cursor cursor)
{
   // If the form's cursor is not the Hand cursor and the 
   // Current cursor is the Default, Draw the specified 
   // cursor on the form in normal size and twice normal size.
   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();
   }
}
Private Sub DrawCursorsOnForm(cursor As Cursor)
   ' If the form's cursor is not the Hand cursor and the 
   ' Current cursor is the Default, Draw the specified 
   ' cursor on the form in normal size and twice normal size. 
   If (Not Me.Cursor.Equals(Cursors.Hand)) And _
     Cursor.Current.Equals(Cursors.Default) Then

      ' Draw the cursor stretched.
      Dim graphics As Graphics = Me.CreateGraphics()
      Dim rectangle As 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()
   End If
End Sub

Comentários

O comando de desenho se origina na superfície gráfica representada pelo g parâmetro, mas um Graphics objeto não contém informações sobre como renderizar uma determinada imagem, portanto, ele passa a chamada para o Cursor objeto. O DrawStretched método estende a imagem para preencher o especificado Rectangle quando o cursor é desenhado.

Aplica-se a

Confira também