×
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.
83 page views in the last 30 days.
×