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.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin