Aracılığıyla paylaş


Bir Cihaz Bağlamına Grafik Nesnesi Seçme

Bu konu, pencerenin cihaz bağlamında grafik nesneleri kullanmak için geçerlidir. Çizim nesnesi oluşturduktan sonra, burada depolanan varsayılan nesne yerine bunu cihaz bağlamında seçmeniz gerekir:

void CNewView::OnDraw(CDC* pDC)
{
   CPen penBlack;  // Construct it, then initialize
   if (penBlack.CreatePen(PS_SOLID, 2, RGB(0, 0, 0)))
   {
      // Select it into the device context
      // Save the old pen at the same time
      CPen* pOldPen = pDC->SelectObject(&penBlack);

      // Draw with the pen
      pDC->MoveTo(20, 20);
      pDC->LineTo(40, 40);

      // Restore the old pen to the device context
      pDC->SelectObject(pOldPen);
   }
   else
   {
      // Alert the user that resources are low
   }
}

Grafik Nesnelerinin Kullanım Ömrü

SelectObject tarafından döndürülen grafik nesnesi "geçici"dir. Diğer bir ifadeyle, program boşta kalma süresi geldiğinde sınıfının CWinApp OnIdle üye işlevi tarafından silinir. Denetimi ana ileti döngüsüne döndürmeden tarafından döndürülen SelectObject nesneyi tek bir işlevde kullandığınız sürece sorun yaşamazsınız.

Ne hakkında daha fazla bilgi edinmek istiyorsunuz?

Ayrıca bkz.

Grafik Nesneler