dcclient.h

Clase wxClientDC

wxClientDC es principalmente útil para obtener información sobre la ventana desde fuera del manejador EVT_PAINT().

Jerarquía:

Jerarquía de la clase wxClientDC

El uso típico de esta clase es obtener la extensión de alguna cadena de texto con el fin de asignar el tamaño suficiente para una ventana, por ejemplo.

    // Crea la etiqueta inicialmente vacía con el tamaño suficiente 
    // para mostrar la cadena dada.
    wxClientDC dc(this);
    wxStaticText* text = new wxStaticText
        (
            this, wxID_ANY, "",
            wxPoint(),
            dc.GetTextExtent("String of max length"),
            wxST_NO_AUTORESIZE
        );
}

Nota: Aunque wxClientDC también puede usarse para dibujar en el área cliente de una ventana desde fuera de un manejador EVT_PAINT() en algunos ports, esto no funciona en todas las plataformas (ni wxOSX ni wxGTK con backend GTK 3 Wayland lo soportan, por lo que dibujar usando wxClientDC simplemente no tiene ningún efecto allí) y la única forma portable de dibujar es mediante wxPaintDC. Para redibujar una pequeña parte de la ventana, usar wxWindow::RefreshRect() para invalidar solo esta parte y comprobar wxWindow::GetUpdateRegion() en el manejador de eventos paint para redibujar solo esta parte.

Los objetos wxClientDC deben construirse normalmente como objetos de pila temporales, es decir, no almacenar un objeto wxClientDC.

Un objeto wxClientDC se inicializa para utilizar la misma fuente y colores que la ventana a la que está asociado.

Funciones miembro

wxClientDC()

wxClientDC::wxClientDC(wxWindow * window)

Constructor.

Pasar un puntero a la ventana sobre la que desea pintar.

Métodos y datos heredados

Esta clase hereda los métodos y datos miembro públicos y protegidos de wxObject, wxDC y wxWindowDC.