Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bit eşlemler, bölgeler, fırçalar, kalemler, paletler ve yazı tipleri gibi çeşitli Windows grafik cihaz arabirimi (GDI) nesneleri için temel sınıf sağlar.
Sözdizimi
class CGdiObject : public CObject
Üyeler
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
| CGdiObject::CGdiObject | Bir CGdiObject nesne oluşturur. |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
| CGdiObject::Attach | Bir nesneye CGdiObject Windows GDI nesnesi ekler. |
| CGdiObject::CreateStockObject | Önceden tanımlanmış Windows stok kalemlerinden, fırçalarından veya yazı tiplerinden birine tanıtıcı alır. |
| CGdiObject::D eleteObject | Nesneyle ilişkili tüm sistem depolama alanını boşaltarak nesneye CGdiObject bağlı Windows GDI nesnesini bellekten siler. |
| CGdiObject::D eleteTempMap | tarafından FromHandleoluşturulan tüm geçici CGdiObject nesneleri siler. |
| CGdiObject::D etach | Bir Windows GDI nesnesini bir CGdiObject nesneden ayırır ve Windows GDI nesnesine bir tanıtıcı döndürür. |
| CGdiObject::FromHandle | Windows GDI nesnesine CGdiObject tanıtıcı verilen nesneye bir işaretçi döndürür. |
| CGdiObject::GetObject | Arabelleği, nesneye eklenmiş CGdiObject Windows GDI nesnesini açıklayan verilerle doldurur. |
| CGdiObject::GetObjectType | GDI nesnesinin türünü alır. |
| CGdiObject::GetSafeHandle | NULL olmadığı sürece this döndürürm_hObject; bu durumda NULL döndürülür. |
| CGdiObject::UnrealizeObject | Fırçanın kaynağını sıfırlar veya mantıksal paleti sıfırlar. |
Ortak İşleçler
| Veri Akışı Adı | Açıklama |
|---|---|
| CGdiObject::operator != | İki GDI nesnesinin mantıksal olarak eşit olup olmadığını belirler. |
| CGdiObject::operator == | İki GDI nesnesinin mantıksal olarak eşit olup olmadığını belirler. |
| CGdiObject::operator HGDIOBJ | Ekli Windows GDI nesnesine bir HANDLE alır. |
Ortak Veri Üyeleri
| Veri Akışı Adı | Açıklama |
|---|---|
| CGdiObject::m_hObject | Bu nesneye bağlı HBITMAP, HPALETTE, HRGN, HBRUSH, HPEN veya HFONT içeren bir TANıTıCı. |
Açıklamalar
Hiçbir zaman doğrudan bir CGdiObject oluşturmazsınız. Bunun yerine, veya CBrushgibi CPen türetilmiş sınıflarından birinden bir nesne oluşturursunuz.
hakkında CGdiObjectdaha fazla bilgi için bkz . Grafik Nesneleri.
Devralma Hiyerarşisi
CGdiObject
Gereksinimler
Üst bilgi: afxwin.h
CGdiObject::Attach
Bir nesneye CGdiObject Windows GDI nesnesi ekler.
BOOL Attach(HGDIOBJ hObject);
Parametreler
hObject
Bir Windows GDI nesnesine tanıtıcı (örneğin, HPEN veya HBRUSH).
Dönüş Değeri
Ek başarılı olursa sıfır olmayan; aksi takdirde 0.
CGdiObject::CGdiObject
Bir CGdiObject nesne oluşturur.
CGdiObject();
Açıklamalar
Hiçbir zaman doğrudan bir CGdiObject oluşturmazsınız. Bunun yerine, veya Cbrushgibi CPen türetilmiş sınıflarından birinden bir nesne oluşturursunuz.
CGdiObject::CreateStockObject
Önceden tanımlanmış Windows GDI kalemlerinden, fırçalarından veya yazı tiplerinden birine tanıtıcı alır ve GDI nesnesini nesneye CGdiObject ekler.
BOOL CreateStockObject(int nIndex);
Parametreler
nIndex
İstenen stok nesnesinin türünü belirten bir sabit. Uygun değerlerin açıklaması için Windows SDK'sında GetStockObject için fnObject parametresine bakın.
Dönüş Değeri
İşlev başarılı olursa sıfır dışında bir değer, aksi durumda 0.
Açıklamalar
Hisse senedi kalemi gibi CPen Windows GDI nesne türüne karşılık gelen türetilmiş sınıflardan biriyle bu işlevi çağırın.
CGdiObject::D eleteObject
Windows GDI nesnesiyle ilişkili tüm sistem depolama alanını boşaltarak ekli Windows GDI nesnesini bellekten siler.
BOOL DeleteObject();
Dönüş Değeri
GDI nesnesi başarıyla silindiyse sıfır olmayan; aksi takdirde 0.
Açıklamalar
Nesneyle CGdiObject ilişkilendirilmiş depolama alanı bu çağrıdan etkilenmez. Bir uygulama, şu anda bir cihaz bağlamında seçili olan bir CGdiObject nesnede çağrı DeleteObject yapılmamalıdır.
Desen fırçası silindiğinde, fırçayla ilişkili bit eşlem silinmez. Bit eşlem bağımsız olarak silinmelidir.
CGdiObject::D eleteTempMap
Boşta kalma zamanı işleyicisi tarafından CWinApp otomatik olarak çağrılır, DeleteTempMap tarafından FromHandleoluşturulan tüm geçici CGdiObject nesneleri siler.
static void PASCAL DeleteTempMap();
Açıklamalar
DeleteTempMapnesneyi silmeden CGdiObject önce geçici CGdiObject bir nesneye bağlı Windows GDI nesnesini ayırır.
Örnek
// DeleteTempMap() is a static member and so does not need to
// be called within the scope of an instantiated CGdiObject object.
CGdiObject::DeleteTempMap();
CGdiObject::D etach
Bir Windows GDI nesnesini bir CGdiObject nesneden ayırır ve Windows GDI nesnesine bir tanıtıcı döndürür.
HGDIOBJ Detach();
Dönüş Değeri
Ayrılmış Windows GDI nesnesine A HANDLE ; aksi takdirde GDI nesnesi eklenmemişse NULL.
CGdiObject::FromHandle
Windows GDI nesnesine CGdiObject tanıtıcı verilen nesneye bir işaretçi döndürür.
static CGdiObject* PASCAL FromHandle(HGDIOBJ hObject);
Parametreler
hObject
Windows GDI nesnesine tanıtıcı.
Dönüş Değeri
Geçici veya kalıcı olabilecek bir CGdiObject işaretçi.
Açıklamalar
Bir CGdiObject nesne Windows GDI nesnesine zaten bağlı değilse, geçici CGdiObject bir nesne oluşturulur ve eklenir.
Bu geçici CGdiObject nesne yalnızca uygulamanın olay döngüsünde boşta kalma süresine sahip olduğu bir sonraki zamana kadar geçerlidir ve bu süre boyunca tüm geçici grafik nesneleri silinir. Bunu söylemenin bir diğer yolu da geçici nesnenin yalnızca bir pencere iletisinin işlenmesi sırasında geçerli olmasıdır.
CGdiObject::GetObject
Bir arabelleği belirtilen nesneyi tanımlayan verilerle doldurur.
int GetObject(
int nCount,
LPVOID lpObject) const;
Parametreler
nCount
lpObject arabelleğine kopyalanacak bayt sayısını belirtir.
lpObject
Bilgileri almak için kullanıcı tarafından sağlanan arabelleğe işaret edilir.
Dönüş Değeri
Alınan bayt sayısı; aksi takdirde bir hata oluşursa 0.
Açıklamalar
İşlev, aşağıdaki listede gösterildiği gibi türü grafik nesnesinin türüne bağlı olan bir veri yapısı alır:
| Object | Arabellek türü |
|---|---|
CPen |
LOGPEN |
CBrush |
LOGBRUSH |
CFont |
LOGFONT |
CBitmap |
BİT EŞLEM |
CPalette |
WORD |
CRgn |
Desteklenmez |
Nesne bir CBitmap nesneyse, GetObject bit eşlemin yalnızca genişlik, yükseklik ve renk biçimi bilgilerini döndürür. Gerçek bitler CBitmap::GetBitmapBits kullanılarak alınabilir.
Nesne bir CPalette nesneyse, GetObject paletteki girdi sayısını belirten bir WORD alır. İşlev, paleti tanımlayan LOGPALETTE yapısını almaz. Bir uygulama, CPalette::GetPaletteEntries çağrısı yaparak palet girdileri hakkında bilgi alabilir.
CGdiObject::GetObjectType
GDI nesnesinin türünü alır.
UINT GetObjectType() const;
Dönüş Değeri
Başarılı olursa nesnenin türü; aksi takdirde 0. Değer aşağıdakilerden biri olabilir:
OBJ_BITMAP Bit Eşlem
OBJ_BRUSH Fırçası
OBJ_FONT Yazı Tipi
OBJ_PAL Paleti
OBJ_PEN Kalemi
genişletilmiş kalem OBJ_EXTPEN
OBJ_REGION Bölgesi
cihaz bağlamı OBJ_DC
bellek cihazı bağlamı OBJ_MEMDC
Meta Dosyasını OBJ_METAFILE
Meta dosyası cihaz bağlamı OBJ_METADC
gelişmiş meta dosyasını OBJ_ENHMETAFILE
gelişmiş meta dosyası cihaz bağlamı OBJ_ENHMETADC
CGdiObject::GetSafeHandle
NULL olmadığı sürece this döndürürm_hObject; bu durumda NULL döndürülür.
HGDIOBJ GetSafeHandle() const;
Dönüş Değeri
Ekli Windows GDI nesnesine bir HANDLE; aksi takdirde, hiçbir nesne eklenmemişse NULL.
Açıklamalar
Bu, genel tanıtıcı arabirimi paradigması kapsamındadır ve NULL bir tanıtıcı için geçerli veya özel bir değer olduğunda kullanışlıdır.
Örnek
CWnd::IsWindowEnabled örneğine bakın.
CGdiObject::m_hObject
Bu nesneye bağlı HBITMAP, HRGN, HBRUSH, HPEN, HPALETTE veya HFONT içeren bir TANıTıCı.
HGDIOBJ m_hObject;
CGdiObject::operator !=
İki GDI nesnesinin mantıksal olarak eşit olup olmadığını belirler.
BOOL operator!=(const CGdiObject& obj) const;
Parametreler
Obj
Var olan CGdiObjectbir öğesine yönelik bir işaretçi.
Açıklamalar
Sol taraftaki bir GDI nesnesinin sağ taraftaki bir GDI nesnesine eşit olup olmadığını belirler.
CGdiObject::operator ==
İki GDI nesnesinin mantıksal olarak eşit olup olmadığını belirler.
BOOL operator==(const CGdiObject& obj) const;
Parametreler
Obj
Var olan CGdiObjectbir öğesine başvuru.
Açıklamalar
Sol taraftaki bir GDI nesnesinin sağ taraftaki bir GDI nesnesine eşit olup olmadığını belirler.
CGdiObject::operator HGDIOBJ
Ekli Windows GDI nesnesine bir HANDLE alır; aksi takdirde, hiçbir nesne eklenmemişse NULL.
operator HGDIOBJ() const;
CGdiObject::UnrealizeObject
Fırçanın kaynağını sıfırlar veya mantıksal paleti sıfırlar.
BOOL UnrealizeObject();
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
UnrealizeObject sınıfının üye işlevi CGdiObject olsa da, yalnızca veya CPalette nesnelerinde CBrush çağrılmalıdır.
Nesneler için CBrush sistemi, UnrealizeObject bir sonraki seçildiğinde verilen fırçanın kaynağını cihaz bağlamı içine sıfırlamaya yönlendirir. Nesne bir CPalette nesneyse, UnrealizeObject sistemi paleti daha önce gerçekleştirilmemiş gibi gerçekleştirmeye yönlendirir. Uygulama belirtilen palet için CDC::RealizePalette işlevini bir sonraki çağırışında, sistem mantıksal paleti sistem paletiyle tamamen yeniden eşler.
İşlev UnrealizeObject stok nesneleriyle kullanılmamalıdır. Yeni UnrealizeObject bir fırça başlangıcı ayarlandığında işlev çağrılmalıdır (CDC::SetBrushOrg işlevi aracılığıyla). İşlev, UnrealizeObject seçili durumdaki fırça veya şu anda seçili olan herhangi bir görüntü bağlamı paleti için çağrılmamalıdır.
Ayrıca bkz.
Hiyerarşi Grafiği
CBitmap Sınıfı
CBrush Sınıfı
CFont Sınıfı
CPalette Sınıfı
CPen Sınıfı
CRgn Sınıfı