CPictureHolder 類別
實作 Picture 屬性,讓用戶能夠在控件中顯示圖片。
語法
class CPictureHolder
成員
公用建構函式
名稱 | 描述 |
---|---|
CPictureHolder::CPictureHolder | 建構 CPictureHolder 物件。 |
公用方法
名稱 | 描述 |
---|---|
CPictureHolder::CreateEmpty | 建立空的 CPictureHolder 物件。 |
CPictureHolder::CreateFromBitmap | 從點陣圖建立 CPictureHolder 物件。 |
CPictureHolder::CreateFromIcon | 從圖示建立 CPictureHolder 物件。 |
CPictureHolder::CreateFromMetafile | CPictureHolder 從元檔建立物件。 |
CPictureHolder::GetDisplayString | 擷取控件容器之屬性瀏覽器中顯示的字串。 |
CPictureHolder::GetPictureDispatch | 傳 CPictureHolder 回物件的 IDispatch 介面。 |
CPictureHolder::GetType | CPictureHolder 指出物件是否為位圖、元檔或圖示。 |
CPictureHolder::Render | 呈現圖片。 |
CPictureHolder::SetPictureDispatch | CPictureHolder 設定物件的IDispatch 介面。 |
公用資料成員
名稱 | 描述 |
---|---|
CPictureHolder::m_pPict | 圖片物件的指標。 |
備註
CPictureHolder
沒有基類。
使用 stock Picture 屬性,開發人員可以指定位圖、圖示或元文件來顯示。
如需建立自定義圖片屬性的詳細資訊,請參閱 MFC ActiveX 控件:在 ActiveX 控制件中使用圖片一文。
繼承階層架構
CPictureHolder
需求
標頭: afxctl.h
CPictureHolder::CPictureHolder
建構 CPictureHolder
物件。
CPictureHolder();
CPictureHolder::CreateEmpty
建立空 CPictureHolder
的 物件,並將它 IPicture
連接到介面。
BOOL CreateEmpty();
傳回值
如果成功建立物件,則為非零;否則為 0。
CPictureHolder::CreateFromBitmap
使用點陣圖來初始化 中的 CPictureHolder
圖片物件。
BOOL CreateFromBitmap(
UINT idResource);
BOOL CreateFromBitmap(
CBitmap* pBitmap,
CPalette* pPal = NULL,
BOOL bTransferOwnership = TRUE);
BOOL CreateFromBitmap(
HBITMAP hbm,
HPALETTE hpal = NULL,
BOOL bTransferOwnership = FALSE);
參數
idResource
位圖資源的資源標識碼。
pBitmap
CBitmap 物件的指標。
pPal
CPalette 物件的指標。
bTransferOwnership
指出圖片物件是否會取得位圖和調色盤對象的擁有權。
hbm
要從中 CPictureHolder
建立物件的點陣圖句柄。
hpal
用於轉譯點陣圖的調色盤句柄。
傳回值
如果成功建立物件,則為非零;否則為 0。
備註
如果 bTransferOwnership 為 TRUE,則呼叫端不應該在此呼叫傳回之後以任何方式使用位圖或調色盤物件。 如果 bTransferOwnership 為 FALSE,呼叫端會負責確保位圖和調色盤對象在圖片物件的存留期內保持有效。
CPictureHolder::CreateFromIcon
使用圖示來初始化 中的 CPictureHolder
圖片物件。
BOOL CreateFromIcon(
UINT idResource);
BOOL CreateFromIcon(
HICON hIcon,
BOOL bTransferOwnership = FALSE);
參數
idResource
位圖資源的資源標識碼。
hIcon
處理建立物件的圖示 CPictureHolder
。
bTransferOwnership
指出圖片物件是否會取得圖示對象的擁有權。
傳回值
如果成功建立物件,則為非零;否則為 0。
備註
如果 bTransferOwnership 為 TRUE,則呼叫端不應在此呼叫傳回之後以任何方式使用圖示物件。 如果 bTransferOwnership 為 FALSE,呼叫端會負責確保圖示對象在圖片物件的存留期內保持有效。
CPictureHolder::CreateFromMetafile
使用元檔來初始化 中的 CPictureHolder
圖片物件。
BOOL CreateFromMetafile(
HMETAFILE hmf,
int xExt,
int yExt,
BOOL bTransferOwnership = FALSE);
參數
hmf
用來建立 CPictureHolder
物件的元檔句柄。
xExt
圖片的 X 範圍。
yExt
圖片的 Y 範圍。
bTransferOwnership
指出圖片物件是否會取得元檔對象的擁有權。
傳回值
如果成功建立物件,則為非零;否則為 0。
備註
如果 bTransferOwnership 為 TRUE,則呼叫端不應該在此呼叫傳回之後以任何方式使用元文件物件。 如果 bTransferOwnership 為 FALSE,呼叫端會負責確保元檔對象在圖片物件的存留期內保持有效。
CPictureHolder::GetDisplayString
擷取顯示在容器之屬性瀏覽器中的字串。
BOOL GetDisplayString(CString& strValue);
參數
strValue
要保存顯示字串之 CString 的參考。
傳回值
如果成功擷取字串,則為非零;否則為 0。
CPictureHolder::GetPictureDispatch
此函式會傳回物件介面的IPictureDisp
指標CPictureHolder
。
LPPICTUREDISP GetPictureDispatch();
傳回值
對象的IPictureDisp
介面指標CPictureHolder
。
備註
呼叫端在完成時,必須在此指標上呼叫 Release
。
CPictureHolder::GetType
指出圖片是否為位圖、元檔或圖示。
short GetType();
傳回值
值,表示圖片的類型。 可能的值及其意義如下:
值 | 意義 |
---|---|
PICTYPE_UNINITIALIZED | CPictureHolder 對象已單位化。 |
PICTYPE_NONE | CPictureHolder 對像是空的。 |
PICTYPE_BITMAP | 圖片是位圖。 |
PICTYPE_METAFILE | 圖片是元檔。 |
PICTYPE_ICON | 圖片是圖示。 |
CPictureHolder::m_pPict
對象的IPicture
介面指標CPictureHolder
。
LPPICTURE m_pPict;
CPictureHolder::Render
轉譯 rcRender 所參考之矩形中的圖片。
void Render(
CDC* pDC,
const CRect& rcRender,
const CRect& rcWBounds);
參數
pDC
要轉譯圖片之顯示內容的指標。
rcRender
要轉譯圖片的矩形。
rcWBounds
矩形,表示呈現圖片之物件的周框。 對於控件,這個矩形是傳遞至 COleControl::OnDraw 覆寫的 rcBounds 參數。
CPictureHolder::SetPictureDispatch
將 CPictureHolder
物件連接到 IPictureDisp
介面。
void SetPictureDispatch(LPPICTUREDISP pDisp);
參數
pDisp
新 IPictureDisp
介面的指標。