描述
将此图像对象的状态设置为上一次调用GdipSaveGraphics函数存储的状态。
C++ 语法
GpStatus WINGDIPAPI GdipRestoreGraphics( GpGraphics *graphics, GraphicsState state ); |
PowerBASIC 语法
FUNCTION GdipRestoreGraphics ( _ BYVAL graphics AS DWORD, _ BYVAL pState AS DWORD _ ) AS LONG |
参数
graphics
[in]指向图像对象的指针。
state
[in]32位值(由前一次调用GdipSaveGraphics函数 返回),用于标识已保存状态的块。
返回值
如果函数成功,则返回Ok,它是状态枚举的一个元素。
如果函数失败,它返回状态枚举的其他元素之一。
备注
当您调用GdipSaveGraphics函数时,将保存Graphics对象状态的信息块放在堆栈上。GdipSaveGraphics函数返回一个标识该信息块的值。当您将识别值传递给GdipRestoreGraphics方法时,信息块将从堆栈中删除,用于将图像对象恢复到GdipSaveGraphics调用时所处的状态。请注意,由GdipSaveGraphics函数给定的调用返回的标识符只能传递一次到GdipRestoreGraphics函数。
?/p>
调用GdipSaveGraphics函数可以嵌套;也就是说,您可以在调用GdipRestoreGraphics函数之前多次调用GdipSaveGraphics函数。每次调用GdipSaveGraphics函数时,信息块都放在堆栈上,您将收到信息块的标识符。当您将其中一个标识符传递给GdipRestoreGraphics函数时,图像对象将返回到返回该特定标识符的GdipSaveGraphics调用时所处的状态。由GdipSaveGraphics调用放置在堆栈上的信息块将从堆栈中删除,并且在GdipSaveGraphics调用之后放置在该堆栈上的所有信息块也将被删除。
?/p>
调用GdipBeginContainer功能将信息块放在与GdipSaveGraphics功能的调用相同的堆栈上。正如GdipRestoreGraphics电话与GdipSaveGraphics电话配对,GdipEndContainer电话与GdipBeginContainer电话配对。
?/p>
警告当您致电GdipRestoreGraphics时,相应的GdipSaveGraphics呼叫后,堆栈上的所有信息块(GdipRestoreGraphics或GdipBeginContainer)将从堆栈中删除。同样,当您致电GdipEndContainer时,相应调用GdipBeginContainer之后,堆叠中的所有信息块(由GdipSaveGraphics或GdipBeginContainer)从堆栈中移除。


