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.
Bir Windows grafik cihaz arabirimi (GDI) bit eşlemini kapsüller ve bit eşlemi işlemek için üye işlevleri sağlar.
Sözdizimi
class CBitmap : public CGdiObject
Üyeler
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
CBitmap::CBitmap |
Bir CBitmap nesne oluşturur. |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
CBitmap::CreateBitmap |
Nesneyi, belirtilen genişlik, yükseklik ve bit deseni olan cihaza bağımlı bir bellek bit eşlemi ile başlatır. |
CBitmap::CreateBitmapIndirect |
Nesneyi, bir yapıda verilen genişlik, yükseklik ve bit deseni (belirtilmişse) ile bir BITMAP bit eşlem ile başlatır. |
CBitmap::CreateCompatibleBitmap |
Belirtilen bir cihazla uyumlu olması için nesneyi bit eşlem ile başlatır. |
CBitmap::CreateDiscardableBitmap |
Nesneyi, belirtilen bir cihazla uyumlu atılabilir bir bit eşlem ile başlatır. |
CBitmap::FromHandle |
Bir Windows HBITMAP bit eşlemine CBitmap tanıtıcı verildiğinde nesneye bir işaretçi döndürür. |
CBitmap::GetBitmap |
Bir BITMAP yapıyı bit eşlem hakkındaki bilgilerle doldurur. |
CBitmap::GetBitmapBits |
Belirtilen bit eşlem bitlerini belirtilen arabelleğe kopyalar. |
CBitmap::GetBitmapDimension |
Bit eşlem genişliğini ve yüksekliğini döndürür. Yükseklik ve genişlik değerinin daha önce üye işlevi tarafından SetBitmapDimension ayarlandığı varsayılır. |
CBitmap::LoadBitmap |
Uygulamanın yürütülebilir dosyasından adlandırılmış bir bit eşlem kaynağı yükleyerek ve bit eşlemi nesneye ekleyerek nesnesini başlatır. |
CBitmap::LoadMappedBitmap |
Bit eşlem yükler ve renkleri geçerli sistem renklerine eşler. |
CBitmap::LoadOEMBitmap |
Önceden tanımlanmış bir Windows bit eşlemini yükleyip bit eşlemi nesneye ekleyerek nesnesini başlatır. |
CBitmap::SetBitmapBits |
Bit eşlem bitlerini belirtilen bit değerlerine ayarlar. |
CBitmap::SetBitmapDimension |
Bit eşlem için 0,1 milimetre birim cinsinden genişlik ve yükseklik atar. |
Ortak İşleçler
| Veri Akışı Adı | Açıklama |
|---|---|
CBitmap::operator HBITMAP |
Nesneye bağlı Windows tutamacını CBitmap döndürür. |
Açıklamalar
Bir CBitmap nesneyi kullanmak için nesnesini oluşturup başlatma üyesi işlevlerinden biriyle buna bir bit eşlem tutamacı ekleyin ve nesnenin üye işlevlerini çağırın.
gibi CBitmapgrafik nesneleri kullanma hakkında daha fazla bilgi için bkz . Grafik Nesneleri.
Devralma Hiyerarşisi
CBitmap
Gereksinimler
Üstbilgi: afxwin.h
CBitmap::CBitmap
Bir CBitmap nesne oluşturur.
CBitmap();
Açıklamalar
Sonuçta elde edilen nesne başlatma üye işlevlerinden biriyle başlatılmalıdır.
CBitmap::CreateBitmap
Belirtilen genişlik, yükseklik ve bit deseni olan cihaza bağımlı bir bellek bit eşlemi başlatır.
BOOL CreateBitmap(
int nWidth,
int nHeight,
UINT nPlanes,
UINT nBitcount,
const void* lpBits);
Parametreler
nWidth
Bit eşlem genişliğini (piksel cinsinden) belirtir.
nHeight
Bit eşlem yüksekliğini (piksel cinsinden) belirtir.
nPlanes
Bit eşlem içindeki renk düzlemlerinin sayısını belirtir.
nBitcount
Görüntü pikseli başına renk biti sayısını belirtir.
lpBits
İlk bit eşlem bit değerlerini içeren bir bayt dizisine işaret eder. ise NULL, yeni bit eşlem başlatılmamış olarak bırakılır.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Renkli bit eşlem nPlanes için veya nBitcount parametresi 1 olarak ayarlanmalıdır. Bu parametrelerin her ikisi de 1 olarak ayarlanırsa, CreateBitmap tek renkli bir bit eşlem oluşturur.
Bir bit eşlem görüntüleme cihazı için doğrudan seçilemiyor olsa da, işlevi kullanılarak CDC::SelectObject bir "bellek cihazı bağlamı" için geçerli bit eşlem olarak seçilebilir ve uyumlu herhangi bir cihaz bağlamı CDC::BitBlt kullanılarak kopyalanabilir.
İşlev tarafından CreateBitmap oluşturulan nesneyle CBitmap bitirdiğinizde, önce cihaz bağlamından bit eşlemi seçin, ardından nesneyi silinCBitmap.
Daha fazla bilgi için yapıdaki alanın açıklamasına bmBits BITMAP bakın. Yapı BITMAP , üye işlevi altında CBitmap::CreateBitmapIndirect açıklanmıştır.
CBitmap::CreateBitmapIndirect
tarafından işaret lpBitmapedilen yapıda verilen genişlik, yükseklik ve bit desenine (belirtilmişse) sahip bir bit eşlem başlatır.
BOOL CreateBitmapIndirect(LPBITMAP lpBitmap);
Parametreler
lpBitmap
Bit eşlem hakkında bilgi içeren bir BITMAP yapıyı gösterir.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Görüntü cihazı için bit eşlem doğrudan seçilemiyor olsa da, veya CDC::StretchBlt işlevi kullanılarak CDC::SelectObject bir bellek cihazı bağlamı için geçerli bit eşlem olarak seçilebilir ve uyumlu herhangi bir cihaz bağlamı CDC::BitBlt kullanılarak kopyalanabilir. (İşlev, CDC::PatBlt geçerli fırçanın bit eşlemini doğrudan görüntü cihazı bağlamlarına kopyalayabilir.)
parametresi tarafından BITMAP lpBitmap işaret edilen yapı işlevi kullanılarak GetObject doldurulmuşsa bit eşlem bitleri belirtilmez ve bit eşlem başlatılmaz. Bir uygulama, bit eşlemi başlatmak için veya SetDIBits gibi CDC::BitBlt bir işlev kullanarak ilk parametresiyle CGdiObject::GetObject tanımlanan bitleri bitleri tarafından CreateBitmapIndirectoluşturulan bit eşlemine kopyalayabilir.
İşlevle oluşturulan nesneyle CBitmap CreateBitmapIndirect bitirdiğinizde, önce cihaz bağlamından bit eşlemi seçin, ardından nesneyi silin CBitmap .
CBitmap::CreateCompatibleBitmap
tarafından pDCbelirtilen cihazla uyumlu bir bit eşlem başlatır.
BOOL CreateCompatibleBitmap(
CDC* pDC,
int nWidth,
int nHeight);
Parametreler
pDC
Cihaz bağlamını belirtir.
nWidth
Bit eşlem genişliğini (piksel cinsinden) belirtir.
nHeight
Bit eşlem yüksekliğini (piksel cinsinden) belirtir.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bit eşlem, belirtilen cihaz bağlamı ile aynı sayıda renkli düzleme veya piksel başına bit biçimine sahiptir. tarafından pDCbelirtilen ile uyumlu herhangi bir bellek cihazı için geçerli bit eşlem olarak seçilebilir.
Bellek cihazı bağlamı ise pDC , döndürülen bit eşlem, bu cihaz bağlamında seçili durumdaki bit eşlem ile aynı biçime sahiptir. "Bellek cihazı bağlamı", bir ekran yüzeyini temsil eden bir bellek bloğudur. Görüntüleri uyumlu cihazın gerçek ekran yüzeyine kopyalamadan önce bellekte hazırlamak için kullanılabilir.
Bir bellek cihazı bağlamı oluşturulduğunda, GDI bunun için otomatik olarak tek renkli bir stok bit eşlemi seçer.
Renkli bellek cihazı bağlamında renk veya tek renkli bit eşlemler seçilebileceği için, işlev tarafından CreateCompatibleBitmap döndürülen bit eşlem biçimi her zaman aynı değildir; ancak, eşlenmemiş bir cihaz bağlamı için uyumlu bit eşlem biçimi her zaman cihazın biçimindedir.
İşlevle oluşturulan nesneyle CBitmap CreateCompatibleBitmap bitirdiğinizde, önce cihaz bağlamından bit eşlemi seçin, ardından nesneyi silin CBitmap .
CBitmap::CreateDiscardableBitmap
tarafından pDCtanımlanan cihaz bağlamıyla uyumlu atılabilir bir bit eşlem başlatır.
BOOL CreateDiscardableBitmap(
CDC* pDC,
int nWidth,
int nHeight);
Parametreler
pDC
Cihaz bağlamı belirtir.
nWidth
Bit eşlem genişliğini (bit cinsinden) belirtir.
nHeight
Bit eşleminin yüksekliğini (bit cinsinden) belirtir.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Bit eşlem, belirtilen cihaz bağlamı ile aynı sayıda renkli düzleme veya piksel başına bit biçimine sahiptir. Bir uygulama, tarafından pDCbelirtilenle uyumlu bir bellek cihazı için geçerli bit eşlem olarak bu bit eşlemi seçebilir.
Windows, bu işlev tarafından oluşturulan bit eşlemi yalnızca bir uygulama görüntüleme bağlamı olarak seçmediyse atabilir. Windows bit eşlemi seçili olmadığında atarsa ve uygulama daha sonra bu bit eşlemi seçmeye çalışırsa işlev CDC::SelectObject NULL döndürür.
İşlevle oluşturulan nesneyle CBitmap CreateDiscardableBitmap bitirdiğinizde, önce cihaz bağlamından bit eşlemi seçin, ardından nesneyi silin CBitmap .
CBitmap::FromHandle
Windows GDI bit eşlemine CBitmap tanıtıcı verildiğinde nesneye bir işaretçi döndürür.
static CBitmap* PASCAL FromHandle(HBITMAP hBitmap);
Parametreler
hBitmap
Bir Windows GDI bit eşlem belirtir.
Dönüş Değeri
Başarılı olursa nesne CBitmap işaretçisi; aksi takdirde NULL.
Açıklamalar
Bir CBitmap nesne tanıtıcıya zaten bağlı değilse, geçici CBitmap bir nesne oluşturulur ve eklenir. Bu geçici CBitmap nesne, yalnızca uygulamanın olay döngüsünde boşta kalma süresine sahip olduğu ve tüm geçici grafik nesnelerinin silindiği bir sonraki zamana kadar geçerlidir. 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.
CBitmap::GetBitmap
Ekli bit eşlem için görüntü özelliklerini alır.
int GetBitmap(BITMAP* pBitMap);
Parametreler
pBitMap
Görüntü özelliklerini alacak bir BITMAP yapı işaretçisi. Bu parametre olmamalıdır NULL.
Dönüş Değeri
Yöntem başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
CBitmap::GetBitmapBits
Eklenen bit eşleminin bit desenini belirtilen arabelleğe kopyalar.
DWORD GetBitmapBits(
DWORD dwCount,
LPVOID lpBits) const;
Parametreler
dwCount
Arabelleğe kopyalanacak bayt sayısı.
lpBits
Bit eşlemi alacak arabelleğe işaretçi.
Dönüş Değeri
Yöntem başarılı olursa arabelleğe kopyalanan bayt sayısı; aksi takdirde 0.
Açıklamalar
Gerekli arabellek boyutunu belirlemek için kullanın CBitmap::GetBitmap .
CBitmap::GetBitmapDimension
Bit eşlem genişliğini ve yüksekliğini döndürür.
CSize GetBitmapDimension() const;
Dönüş Değeri
Bit eşlem genişliği ve yüksekliği 0,1 milimetre cinsinden ölçülür. Yükseklik nesnenin cy CSize üyesinde ve genişlik de üyededir cx . Bit eşlem genişliği ve yüksekliği kullanılarak SetBitmapDimensionayarlanmamışsa, dönüş değeri 0'dır.
Açıklamalar
Yükseklik ve genişlik değerinin daha önce üye işlevi kullanılarak SetBitmapDimension ayarlandığı varsayılır.
CBitmap::LoadBitmap
uygulamanın yürütülebilir dosyasındaki kimlik numarası tarafından lpszResourceName adlandırılan veya kimlik numarasıyla nIDResource tanımlanan bit eşlem kaynağını yükler.
BOOL LoadBitmap(LPCTSTR lpszResourceName);
BOOL LoadBitmap(UINT nIDResource);
Parametreler
lpszResourceName
Bit eşlem kaynağının adını içeren null olarak sonlandırılan bir dizeyi gösterir.
nIDResource
Bit eşlem kaynağının kaynak kimliği numarasını belirtir.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Yüklenen bit eşlem nesneye CBitmap eklenir.
tarafından lpszResourceName tanımlanan bit eşlem yoksa veya bit eşlemi yüklemek için yeterli bellek yoksa işlev 0 döndürür.
İşlev tarafından LoadBitmap yüklenen bit eşlemi silmek için işlevini kullanabilirsinizCGdiObject::DeleteObject, aksi takdirde CBitmap yıkıcı nesneyi sizin için siler.
Dikkat
Nesneyi silmeden önce, bir cihaz bağlamında seçilmediğinden emin olun.
Windows 3.1 ve sonraki sürümlerine aşağıdaki bit eşlemler eklendi:
OBM_UPARRROWIOBM_DNARROWIOBM_RGARROWIOBM_LFARROWI
Bu bit eşlemler, Windows 3.0 ve önceki sürümlerin cihaz sürücülerinde bulunmaz. Bit eşlemlerin tam listesi ve görünümlerinin görüntülenmesi için bkz. Windows SDK'sı.
CBitmap::LoadMappedBitmap
Bit eşlem yüklemek ve renkleri geçerli sistem renklerine eşlemek için bu üye işlevini çağırın.
BOOL LoadMappedBitmap(
UINT nIDBitmap,
UINT nFlags = 0,
LPCOLORMAP lpColorMap = NULL,
int nMapSize = 0);
Parametreler
nIDBitmap
Bit eşlem kaynağının kimliği.
nFlags
Bit eşlem bayrağı. Sıfır veya CMB_MASKEDolabilir.
lpColorMap
Bit eşlemleri eşlemek için gereken renk bilgilerini içeren bir COLORMAP yapı işaretçisi. Bu parametre ise NULL, işlev varsayılan renk eşlemesini kullanır.
nMapSize
tarafından lpColorMapişaret edilen renk eşlemelerinin sayısı.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Varsayılan olarak, LoadMappedBitmap düğme karakterlerinde yaygın olarak kullanılan renkleri eşler.
Eşlenmiş bit eşlem oluşturma hakkında bilgi için bkz. Windows işlevi CreateMappedBitmap ve COLORMAP Windows SDK'sı içindeki yapı.
CBitmap::LoadOEMBitmap
Windows tarafından kullanılan önceden tanımlanmış bir bit eşlem yükler.
BOOL LoadOEMBitmap(UINT nIDBitmap);
Parametreler
nIDBitmap
Önceden tanımlanmış Windows bit eşleminin kimlik numarası. Olası değerler aşağıda şunlardan WINDOWS.Hlistelenmiştir:
OBM_BTNCORNERS
OBM_BTSIZE
OBM_CHECK
OBM_CHECKBOXES
OBM_CLOSE
OBM_COMBO
OBM_DNARROW
OBM_DNARROWD
OBM_DNARROWI
OBM_LFARROW
OBM_LFARROWD
OBM_LFARROWI
OBM_MNARROW
OBM_OLD_CLOSE
OBM_OLD_DNARROW
OBM_OLD_LFARROW
OBM_OLD_REDUCE
OBM_OLD_RESTORE
OBM_OLD_RGARROW
OBM_OLD_UPARROW
OBM_OLD_ZOOM
OBM_REDUCE
OBM_REDUCED
OBM_RESTORE
OBM_RESTORED
OBM_RGARROW
OBM_RGARROWD
OBM_RGARROWI
OBM_SIZE
OBM_UPARROW
OBM_UPARROW
OBM_UPARROWD
OBM_ZOOM
OBM_ZOOMD
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
ile başlayan bit eşlem OBM_OLD adları, 3.0 öncesi Windows sürümleri tarafından kullanılan bit eşlemleri temsil eder.
Sabitlerden herhangi birini kullanabilmek için dahil WINDOWS.H etmeden önce sabitin OEMRESOURCE OBM_ tanımlanması gerektiğini unutmayın.
CBitmap::operator HBITMAP
Nesnenin ekli Windows GDI tutamacını CBitmap almak için bu işleci kullanın.
operator HBITMAP() const;
Dönüş Değeri
Başarılı olursa, nesnesi tarafından temsil edilen Windows GDI nesnesine bir CBitmap tanıtıcı; aksi takdirde NULL.
Açıklamalar
Bu işleç, bir nesnenin doğrudan kullanımını destekleyen bir HBITMAP atama işlecidir.
Grafik nesnelerini kullanma hakkında daha fazla bilgi için bkz . Windows SDK'sında Grafik Nesneleri .
CBitmap::SetBitmapBits
Bit eşlem bitlerini tarafından lpBitsverilen bit değerlerine ayarlar.
DWORD SetBitmapBits(
DWORD dwCount,
const void* lpBits);
Parametreler
dwCount
tarafından lpBitsişaret edilen bayt sayısını belirtir.
lpBits
Nesneye BYTE kopyalanacak piksel değerlerini içeren diziyi CBitmap gösterir. Bit eşleminin görüntüsünü doğru işleyebilmesi için, değerler örnek oluşturulduğunda belirtilen yükseklik, genişlik ve renk derinliği değerlerine CBitmap uyacak şekilde biçimlendirilmelidir. Daha fazla bilgi için bkz. CBitmap::CreateBitmap.
Dönüş Değeri
Bit eşlem bitlerini ayarlarken kullanılan bayt sayısı; İşlev başarısız olursa 0.
CBitmap::SetBitmapDimension
Bit eşlem için 0,1 milimetre birim cinsinden genişlik ve yükseklik atar.
CSize SetBitmapDimension(
int nWidth,
int nHeight);
Parametreler
nWidth
Bit eşlem genişliğini belirtir (0,1 milimetre cinsinden).
nHeight
Bit eşlem yüksekliğini belirtir (0,1 milimetre cinsinden).
Dönüş Değeri
Önceki bit eşlem boyutları. Height, nesnesinin cy üye değişkeninde CSize , width ise üye değişkenindedir cx .
Açıklamalar
GDI, bir uygulama üye işlevini çağırdığında GetBitmapDimension bunları döndürmek dışında bu değerleri kullanmaz.