Udostępnij za pośrednictwem


Cursor.DrawStretched(Graphics, Rectangle) Metoda

Definicja

Rysuje kursor w formacie rozciągniętym na określonej powierzchni w obrębie określonych granic.

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)

Parametry

g
Graphics

PowierzchniaGraphics, na której ma być rysowanie .Cursor

targetRect
Rectangle

Obiekt Rectangle , który reprezentuje granice obiektu Cursor.

Przykłady

Poniższy przykład kodu rysuje określony kursor na formularzu w normalnym rozmiarze i w trybie rozciągniętym, dwa razy większy. Ten przykład wymaga, aby obiekt Form i Cursor został przekazany do metody po jej wywołaniu.

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

Uwagi

Polecenie rysunku pochodzi z powierzchni grafiki reprezentowanej przez g parametr , ale Graphics obiekt nie zawiera informacji o sposobie renderowania danego obrazu, więc przekazuje wywołanie do Cursor obiektu. Metoda DrawStretched rozciąga obraz w celu wypełnienia określonego Rectangle , gdy kursor zostanie narysowany.

Dotyczy

Zobacz też