다음을 통해 공유


Cursor.Draw(Graphics, Rectangle) 메서드

정의

지정된 범위 내의 지정된 표면에 커서를 그립니다.

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

매개 변수

g
Graphics

Graphics를 그릴 Cursor 표면입니다.

targetRect
Rectangle

Rectangle의 범위를 나타내는 Cursor입니다.

예제

다음 코드 예제에서는 폼에 지정된 커서를 일반 크기로 그리고 확장 모드에서 크기가 두 배인 커서를 그립니다. 이 예제에서는 메서드를 Form 호출할 때 메서드에 전달할 개체와 Cursor 개체가 있어야 합니다.

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

설명

그리기 명령은 매개 변수가 g 나타내는 그래픽 화면에서 시작되지만 Graphics 지정된 이미지를 렌더링하는 방법에 대한 정보가 포함되어 있지 않으므로 호출 Cursor을 전달합니다. 이 메서드는 Draw 이미지를 지정된 차원으로 자르며 그릴 이미지를 지정할 Rectangle Cursor수 있습니다. 이 메서드는 일반적으로 그래픽 화면에 커서를 그리려는 경우에 사용됩니다. 예를 들어 사용자가 컨트롤 또는 컨트롤 그룹에서 RadioButton 커서 ListBox 를 선택할 수 있는 대화 상자가 있을 수 있습니다.

적용 대상

추가 정보