×
Namespaces

Variants
Actions

多行CEikLabel

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

文章
翻译:
hoolee
最后由 hamishwillee 在 22 Dec 2011 编辑
  • 详细描述

一个label控件可以显示一行文本,更长的文本只能显示在屏幕外面。

为了显示长文本,我们需要提供屏幕尺寸,按如下方法处理

  • 头文件
#include <eiklabel.h>
#include <AknUtils.h>
  • 链接库
LIBRARY avkon.lib eikcore.lib gdi.lib
  • 源文件
AknTextUtils::WrapToArrayL(*iLabelText, iScreenWidth, *iFont, *iTextArray);

iFont需要为:

iFont=CCoeEnv::Static()->NormalFont();

iTextArray是数组,可以根据屏幕尺寸将长文本转入

当处理完毕后需要在所有数组元素上增加"\n"

SetTextL(iWrappedText->Des());
SetExtent(iXY, (*this).MinimumSize());

这里 iWrappedTextHBufC 对象,iTextArray被增加到后面,以确保单行都以"\n"结尾

根据上述方法可以得到多行绘制文本的CEikLabel.

This page was last modified on 22 December 2011, at 07:42.
107 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×