IPicture interface (ocidl.h)
Manages a picture object and its properties. Picture objects provide a language-neutral abstraction for bitmaps, icons, and metafiles. As with the standard font object, the system provides a standard implementation of the picture object. Its primary interfaces are IPicture and IPictureDisp, the latter being derived from IDispatch to provide access to the picture's properties through Automation. A picture object is created with OleCreatePictureIndirect.
The picture object also supports the outgoing interface IPropertyNotifySink, so a client can determine when picture properties change. Because the picture object supports at least one outgoing interface, it also implements IConnectionPointContainer and its associated interfaces for this purpose.
The picture object also supports IPersistStream so that it can save and load itself from an instance of IStream. An object that uses a picture object internally would normally save and load the picture as part of the object's own persistence handling. The function OleLoadPicture simplifies the creation of a picture object based on stream contents.
Inheritance
The IPicture interface inherits from the IUnknown interface. IPicture also has these types of members:
Methods
The IPicture interface has these methods.
IPicture::get_Attributes Retrieves the current set of the picture's bit attributes. |
IPicture::get_CurDC Retrieves the handle of the current device context. This property is valid only for bitmap pictures. |
IPicture::get_Handle Retrieves the handle to the picture managed within this picture object to a specified location. |
IPicture::get_Height Retrieves the current height of the picture in the picture object. |
IPicture::get_hPal Retrieves a copy of the palette currently used by the picture object. |
IPicture::get_KeepOriginalFormat Retrieves the current value of the picture's KeepOriginalFormat property. |
IPicture::get_Type Retrieves the current type of the picture contained in the picture object. |
IPicture::get_Width Retrieves the current width of the picture in the picture object. |
IPicture::PictureChanged Notifies the picture object that its picture resource has changed. This method only calls IPropertyNotifySink::OnChanged with DISPID_PICT_HANDLE for any connected sinks. |
IPicture::put_KeepOriginalFormat Sets the value of the picture's KeepOriginalFormat property. |
IPicture::Render Renders (draws) a specified portion of the picture defined by the offset (xSrc,ySrc) of the source picture and the dimensions to copy (cxSrc,xySrc). |
IPicture::SaveAsFile Saves the picture's data into a stream in the same format that it would save itself into a file. Bitmaps use the BMP file format, metafiles the WMF format, and icons the ICO format. |
IPicture::SelectPicture Selects a bitmap picture into a given device context, and returns the device context in which the picture was previously selected as well as the picture's GDI handle. This method works in conjunction with IPicture::get_CurDC. |
IPicture::set_hPal Assigns a GDI palette to the picture contained in the picture object. |
Remarks
Each property in the IPicture interface includes a get_PropertyName method if the property supports read access and a put_PropertyName method if the property supports write access.
Property | Type | Access | Description |
---|---|---|---|
Handle | OLE_HANDLE (int) | R | The Windows GDI handle of the picture |
hPal | OLE_HANDLE (int) | RW | The Windows handle of the palette used by the picture. |
Type | short | R | The type of picture (see PICTYPE). |
Width | OLE_XSIZE_HIMETRIC (long) | R | The width of the picture. |
Height | OLE_YSIZE_HIMETRIC (long) | R | The height of the picture. |
CurDC | HDC | R | The current device context. |
KeepOriginalFormat | BOOL | RW | If TRUE, the picture object maintains the entire original state of the picture in memory. If FALSE, any state not applicable to the user's computer is discarded. |
Attributes | DWORD | R | Miscellaneous bit attributes of the picture. |
OLE Implementation
Picture objects provide a language-neutral abstraction for bitmaps, icons, and metafiles. As with the standard font object, the system provides a standard implementation of the picture object. Its primary interfaces are IPicture and IPictureDisp. A picture object is created with OleCreatePictureIndirect and supports both the IPicture and the IPictureDisp interfaces.The OLE-provided picture object implements the complete semantics of the IPicture and IPictureDisp interfaces.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 2000 Professional [desktop apps only] |
Minimum supported server | Windows 2000 Server [desktop apps only] |
Target Platform | Windows |
Header | ocidl.h |