本文整理汇总了C++中CCString::GetLength方法的典型用法代码示例。如果您正苦于以下问题:C++ CCString::GetLength方法的具体用法?C++ CCString::GetLength怎么用?C++ CCString::GetLength使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CCString
的用法示例。
在下文中一共展示了CCString::GetLength方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CalcTextRect
// ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
// ¥ CalcTextRect
// ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
// Returns the rectangle occupied by a text string in the current settings
void CBLCanvas::CalcTextRect(
SInt16 inX,
SInt16 inY,
const CCString &inStr,
Rect &outRect)
{
UWorldSaver safe(mWorld);
::TextFace(mTextFace);
::TextFont(mFontId);
::TextSize(mTextSize);
SInt16 width=::TextWidth(inStr.mString,0,inStr.GetLength());
FontInfo fontInfo;
::GetFontInfo(&fontInfo); // could cache this?
outRect.left=inX;
outRect.right=outRect.left+width;
outRect.top=inY-fontInfo.ascent;
outRect.bottom=inY+fontInfo.descent;
}
示例2: DrawText
// ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
// ¥ DrawText
// ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
// Draws the text in the current face, font, size, col etc
void CBLCanvas::DrawText(
SInt16 inX,
SInt16 inY,
const CCString &inStr)
{
UWorldSaver safe(mWorld);
::RGBForeColour(&mForeColour);
::RGBBackColour(&mBackColour);
::TextFace(mTextFace);
::TextFont(mFontId);
::TextSize(mTextSize);
::MoveTo(inX,inY);
::DrawText(inStr.mString,0,inStr.GetLength());
// Inval the rect
if (mInvalCanvasAsDraw)
{
Rect rect;
// figure the text rectangle
CalcTextRect(inX,inY,inStr,rect);
InvalCanvasRect(rect);
}
}