|
IViewObject::Freeze
Freezes a certain aspect of the object's presentation so that it does not
change until the IViewObject::Unfreeze method is called. The most common use of this method is for banded printing.
HRESULT Freeze(
DWORD dwAspect,
| //Specifies how the object is to be represented
| LONG lindex,
| //Specifies the part of the object to draw
| void * pvAspect,
| //Always NULL
| DWORD * pdwFreeze
| //Points to location containing an identifier to be used in a subsequent call
to Unfreeze
| );
|
|
Parameters
dwAspect
[in]Specifies how the object is to be represented. Representations include
content, an icon, a thumbnail, or a printed document. Valid values are taken from
the enumeration DVASPECT. See the DVASPECT enumeration for more information.
lindex
[in]Indicates the portion of the object that is of interest for the draw
operation. Its interpretation varies with dwAspect. See the DVASPECT enumeration for more information.
pvAspect
[in]Provides more information about the view of the object specified in dwAspect. Since none of the current aspects support additional information; pvAspect must always be NULL.
pdwFreeze
[out]Points to location where an identifying key is returned. This unique key
is later used to cancel the freeze by calling IViewObject::Unfreeze. This key is an index that the default cache uses to keep track of which
object is frozen.
Return Values
S_OK
The presentation was successfully frozen.
VIEW_S_ALREADYFROZEN
Presentation has already been frozen. The value of pdwFreeze is the identifying key of the already frozen object.
OLE_E_BLANK
Presentation not in cache.
DV_E_LINDEX
Invalid value for lindex; currently; only -1 is supported.
DV_E_DVASPECT
Invalid value for dwAspect.
Comments
The IViewObject::Freeze method causes the view object to freeze its drawn representation until a
subsequent call to IViewObject::Unfreeze releases it. After calling IViewObject::Freeze; successive calls to IViewObject::Draw with the same parameters produce the same picture until IViewObject::Unfreeze is called.
IViewObject::Freeze is not part of the persistent state of the object and does not continue
across unloads and reloads of the object.
The most common use of this method is for banded printing.
While in a frozen state; view notifications are not sent. Pending view
notifications are deferred to the subsequent call to IViewObject::Unfreeze.
See Also
DVASPECT, IViewObject::Unfreeze
| Last news from Greatis Software |
 |
|
Nostalgia .Net |
|
.Net is powerful, but not all-powerful, so sometimes we need to use Win32 API for our .Net applications. It's simple enough with Platform Invoke if you have Win32 skill, but we do not always have time to dig the ancient documentation, declare the special types that are compatible with Win32, find the values of the Win32's constants and so on. Nostalgia .Net offers several simple-to-use classes, and components that will allow you to forget about the headache of Win32 and just use the power of Win32 in your application the same way as you use the native. Net classes. More » |
| Recommended software for developers |
 |
|
Ultimate Pack |
|
Component pack for Delphi and C++ Builder that contains runtime form designer, runtime object inspector, print suite and much more for the very special price. More » |
 |
|
Form Designer .Net |
|
Unique runtime form design solution that allows to edit any form in .Net WinForms application at runtime with full source codes for only 300 euro! More » |
 |
|
Print Suite .Net |
|
Print Suite .Net is a set of components for easy printing texts, images and grids from your WinForms applications. Full C# source codes are available More » |
 |
|
Gradient Controls .Net |
|
Gradient Controls .Net offers controls with gradient background feature. Labels, panels and so on... Full C# source codes are available More » |
 |
|
Greatis iGrid |
|
iGrid plots drawing grid right over your desktop, so you can use it everywhere, with any drawing application without any special plugins for different graphic editors. More » |
All the contacts and projectsDmitry Vasiliev (just.dmitry)
Related LinksSoftware for Visual Studio .NET developers Software for Delphi and C++ Builder developers Software for Visual Basic 6 developers Delphi Tips&Tricks MegaDetailed.NET More Online Helps Win32 Programmer's Reference Win32 Multimedia Programmer's Reference OLE Programmer's Reference Microsoft Windows Pen API Programmer's Reference Microsoft Windows Sockets 2 Reference Microsoft Windows Telephony API (TAPI) Programmer's Reference Unix Manual Pages
|