Version: 2.9.4
Device Contexts

Classes: wxBufferedDC, wxBufferedPaintDC, wxDC, wxPostScriptDC, wxMetafileDC, wxMemoryDC, wxPrinterDC, wxScreenDC, wxClientDC, wxPaintDC, wxWindowDC.

A wxDC is a device context onto which graphics and text can be drawn. The device context is intended to represent a number of output devices in a generic way, with the same API being used throughout.

Some device contexts are created temporarily in order to draw on a window. This is true of wxScreenDC, wxClientDC, wxPaintDC, and wxWindowDC. The following describes the differences between these device contexts and when you should use them.

To use a client, paint or window device context, create an object on the stack with the window as argument, for example:

void MyWindow::OnMyCmd(wxCommandEvent& event)
{
    wxClientDC dc(window);
    DrawMyPicture(dc);
}

Try to write code so it is parameterised by wxDC - if you do this, the same piece of code may write to a number of different devices, by passing a different device context. This doesn't work for everything (for example not all device contexts support bitmap drawing) but will work most of the time.

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines