本文整理汇总了C++中CG32bitImage::CopyToClipboard方法的典型用法代码示例。如果您正苦于以下问题:C++ CG32bitImage::CopyToClipboard方法的具体用法?C++ CG32bitImage::CopyToClipboard怎么用?C++ CG32bitImage::CopyToClipboard使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CG32bitImage
的用法示例。
在下文中一共展示了CG32bitImage::CopyToClipboard方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CopyGalacticMapToClipboard
void CopyGalacticMapToClipboard (HWND hWnd, CGalacticMapPainter *pPainter)
{
// Save some parameters
RECT rcOldView = pPainter->GetViewport();
int xOldCenter, yOldCenter;
pPainter->GetPos(&xOldCenter, &yOldCenter);
int iOldScale = pPainter->GetScale();
// Compute the size of the map
RECT rcView;
rcView.left = 0;
rcView.top = 0;
rcView.right = pPainter->GetWidth();
rcView.bottom = pPainter->GetHeight();
// Create a bitmap of the appropriate size
CG32bitImage FullMap;
FullMap.Create(RectWidth(rcView), RectHeight(rcView));
// Paint
pPainter->SetViewport(rcView);
pPainter->SetScale(100);
pPainter->SetPos(0, 0);
pPainter->Paint(FullMap);
// Copy to cliboard
FullMap.CopyToClipboard();
// Restore
pPainter->SetScale(iOldScale);
pPainter->SetViewport(rcOldView);
pPainter->SetPos(xOldCenter, yOldCenter);
}
示例2: GenerateSnapshot
//.........这里部分代码省略.........
Ctx.XForm.Transform(pObj->GetPos(), &xObj, &yObj);
pObj->Paint(Output, xObj, yObj, Ctx);
}
}
}
else
{
Universe.PaintPOV(Output, rcViewport, 0);
}
// Write to file
if (!sFilespec.IsBlank())
{
CString sBmpFilespec;
if (iTotalCount > 100)
sBmpFilespec = pathAddExtensionIfNecessary(strPatternSubst(CONSTLIT("%s%03d"), sFilespec, iSnapshotIndex + 1), CONSTLIT(".bmp"));
else if (iTotalCount > 1)
sBmpFilespec = pathAddExtensionIfNecessary(strPatternSubst(CONSTLIT("%s%02d"), sFilespec, iSnapshotIndex + 1), CONSTLIT(".bmp"));
else
sBmpFilespec = pathAddExtensionIfNecessary(sFilespec, CONSTLIT(".bmp"));
CFileWriteStream OutputFile(sBmpFilespec);
if (OutputFile.Create() != NOERROR)
{
printf("ERROR: Unable to create '%s'\n", sBmpFilespec.GetASCIIZPointer());
return;
}
Output.WriteToWindowsBMP(&OutputFile);
OutputFile.Close();
printf("Found %s: Saved to %s\n", sTargetName.GetASCIIZPointer(), sBmpFilespec.GetASCIIZPointer());
}
// Otherwise, clipboard
else
{
if (error = Output.CopyToClipboard())
{
printf("ERROR: Unable to copy image to clipboard.\n");
return;
}
printf("Found %s: Copied to clipboard.\n", sTargetName.GetASCIIZPointer());
}
// Reset maximum loops
iLoops = 20;
// Done
iSnapshotIndex++;
if (iSnapshotIndex >= iTotalCount)
break;
}
// Done with old system
Universe.DestroySystem(pSystem);
// Loop to the next node
do
{
iNodeIndex = ((iNodeIndex + 1) % Universe.GetTopologyNodeCount());
pNode = Universe.GetTopologyNode(iNodeIndex);
}
while (pNode == NULL || pNode->IsEndGame());
// If we're back to the first node again, restart
if (iNodeIndex == 0)
{
if (--iLoops > 0)
{
// Reinitialize
Universe.Reinit();
CString sError;
if (Universe.InitGame(0, &sError) != NOERROR)
{
printf("ERROR: %s\n", sError.GetASCIIZPointer());
return;
}
iNodeIndex = 0;
pNode = Universe.GetTopologyNode(iNodeIndex);
}
else
{
printf("ERROR: Specified target could not be found.\n");
return;
}
}
}
}