Cursor.Dispose Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Освобождает все ресурсы, занятые модулем Cursor.
public:
virtual void Dispose();
public void Dispose ();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub Dispose ()
Реализации
Примеры
Следующий пример кода рисует указанный курсор на форме в обычном размере и в растянутом режиме в два раза больше. В этом примере требуется передача 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
Комментарии
Вызовите метод Dispose по окончании использования класса Cursor. Метод Dispose
оставляет класс Cursor в непригодном для использования состоянии. После вызова метода Dispose необходимо освободить все ссылки на объект Cursor, чтобы сборщик мусора мог освободить память, занимаемую объектом Cursor. Дополнительные сведения см. в разделе очистки неуправляемых ресурсов и реализации метода Dispose.
Примечание
Всегда вызывайте метод Dispose перед освобождением последней ссылки на класс Cursor. В противном случае используемые ресурсы не будут освобождены, пока сборщик мусора не освободит его.