Graphics.FromHwnd(IntPtr) Method

Definition

Создает новый объект Graphics из указанного дескриптора окна.Creates a new Graphics from the specified handle to a window.

public:
 static System::Drawing::Graphics ^ FromHwnd(IntPtr hwnd);
public static System.Drawing.Graphics FromHwnd (IntPtr hwnd);
static member FromHwnd : nativeint -> System.Drawing.Graphics
Public Shared Function FromHwnd (hwnd As IntPtr) As Graphics

Parameters

hwnd
IntPtr

Дескриптор окна.Handle to a window.

Returns

Graphics

Этот метод возвращает новый объект Graphics для заданного дескриптора окна.This method returns a new Graphics for the specified window handle.

Examples

Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse, который является параметром обработчика событий Paint, а также thisForm, Form для примера.The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler, as well as thisForm, the Form for the example. Код выполняет следующие действия.The code performs the following actions:

  • Создает новую переменную внутреннего указателя hwnd и задает ее в качестве маркера формы в примере.Creates a new internal pointer variable hwnd and sets it to the handle of the example's form.

  • Создает новый Graphics из маркера.Creates a new Graphics from the handle.

  • Рисует прямоугольник для нового Graphics с помощью красного пера.Draws a rectangle to the new Graphics using a red pen.

  • Уничтожает новый Graphics.Disposes the new Graphics.

public:
   void FromHwndHwnd( PaintEventArgs^ /*e*/ )
   {
      // Get handle to form.
      IntPtr hwnd = this->Handle;

      // Create new graphics object using handle to window.
      Graphics^ newGraphics = Graphics::FromHwnd( hwnd );

      // Draw rectangle to screen.
      newGraphics->DrawRectangle( gcnew Pen( Color::Red,3.0f ), 0, 0, 200, 100 );

      // Dispose of new graphics.
      delete newGraphics;
   }
private void FromHwndHwnd(PaintEventArgs e)
{

    // Get handle to form.
    IntPtr hwnd = this.Handle;

    // Create new graphics object using handle to window.
    Graphics newGraphics = Graphics.FromHwnd(hwnd);

    // Draw rectangle to screen.
    newGraphics.DrawRectangle(new Pen(Color.Red, 3), 0, 0, 200, 100);

    // Dispose of new graphics.
    newGraphics.Dispose();
}
Private Sub FromHwndHwnd(ByVal e As PaintEventArgs)

    ' Get handle to form.
    Dim hwnd As IntPtr = Me.Handle


    ' Create new graphics object using handle to window.
    Dim newGraphics As Graphics = Graphics.FromHwnd(hwnd)

    ' Draw rectangle to screen.
    newGraphics.DrawRectangle(New Pen(Color.Red, 3), 0, 0, 200, 100)

    ' Dispose of new graphics.
    newGraphics.Dispose()
End Sub

Remarks

Следует всегда вызывать метод Dispose, чтобы освободить Graphics и связанные ресурсы, созданные методом FromHwnd.You should always call the Dispose method to release the Graphics and related resources created by the FromHwnd method.

Applies to