Graphics::EndContainer 方法 (gdiplusgraphics.h)
Graphics::EndContainer方法會關閉先前由Graphics::BeginContainer方法開啟的圖形容器。
語法
Status EndContainer(
[in] GraphicsContainer state
);
參數
[in] state
類型: GraphicsContainer
Graphics::BeginContainer先前傳回的值 () ,可識別要關閉的容器。
傳回值
類型: 狀態
如果方法成功,它會傳回 Ok,這是 Status 列舉的元素。
如果方法失敗,它會傳回 Status 列舉的其中一個其他元素。
備註
當您呼叫Graphics物件的Graphics::BeginContainer方法時,保留Graphics物件狀態的資訊區塊會放在堆疊上。 Graphics::BeginContainer方法會傳回識別該資訊區塊的值。 當您將識別值傳遞至 Graphics::EndContainer 方法時,資訊區塊會從堆疊中移除,並用來將 Graphics 物件還原到 Graphics::BeginContainer 呼叫時的狀態。
容器可以是巢狀的;也就是說,您可以在呼叫Graphics::EndContainer方法之前多次呼叫Graphics::BeginContainer方法。 每次呼叫 Graphics::BeginContainer 方法時,都會將資訊區塊放在堆疊上,而且您會收到資訊區塊的識別碼。 當您將其中一個識別碼傳遞至 Graphics::EndContainer 方法時, Graphics 物件會傳回至圖形 ::BeginContainer 呼叫傳回該特定識別碼時的狀態。 該 Graphics::BeginContainer呼叫放置在堆疊上的資訊區塊會從堆疊中移除,而且也會移除在該堆疊上放置於該堆疊上的所有資訊區塊::BeginContainer呼叫。
呼叫 Graphics::Save 方法會將資訊區塊放在與 呼叫 Graphics::BeginContainer 方法相同的堆疊上。 就像 Graphics::EndContainer 呼叫與 Graphics::BeginContainer 呼叫配對時, Graphics::Restore 呼叫會與 Graphics::Save 呼叫配對。
範例
下列範例會建立 Graphics 物件,並設定其裁剪區域。 程式碼會開始容器,並設定容器的其他裁剪區域。 程式碼會在呼叫 Graphics::EndContainer) 之後,在容器內填滿兩次:一次,一次在容器外部 (。
VOID Example_EndContainer(HDC hdc)
{
Graphics graphics(hdc);
// Set the clipping region for the Graphics object.
graphics.SetClip(Rect(10, 10, 150, 150));
// Begin a graphics container.
GraphicsContainer container = graphics.BeginContainer();
// Set an additional clipping region for the container.
graphics.SetClip(Rect(100, 50, 100, 75));
// Fill a red rectangle in the container.
SolidBrush redBrush(Color(255, 255, 0, 0));
graphics.FillRectangle(&redBrush, 0, 0, 200, 200);
// End the container, and fill the same rectangle with blue.
graphics.EndContainer(container);
SolidBrush blueBrush(Color(128, 0, 0, 255));
graphics.FillRectangle(&blueBrush, 0, 0, 200, 200);
// Set the clipping region to infinite, and draw
// the two previous clipping regions.
graphics.ResetClip();
Pen blackPen(Color(255, 0, 0, 0), 2.0f);
graphics.DrawRectangle(&blackPen, 10, 10, 150, 150);
graphics.DrawRectangle(&blackPen, 100, 50, 100, 75);
}
需求
最低支援的用戶端 | Windows XP、Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | gdiplusgraphics.h (包含 Gdiplus.h) |
程式庫 | Gdiplus.lib |
Dll | Gdiplus.dll |