A label control is displayed as a single line. So a long text will not be shown if it goes out of screen.
So to show a label which has a long text length, one should just provide the screenwidth or rect wherein the label is to be shown to the following function
Header files :
#include <eiklabel.h>
#include <AknUtils.h>
Link against:
LIBRARY avkon.lib eikcore.lib gdi.lib
Source:
AknTextUtils::WrapToArrayL(*iLabelText, iScreenWidth, *iFont, *iTextArray);
where iFont can be
iFont=CCoeEnv::Static()->NormalFont();
iTextArray is the array in which the long text will be split depending on the iScreenWidth.
Once this is done just add a "\n" to all the array elements and make a single text of all the elements.
Then
SetTextL(iWrappedText->Des());
SetExtent(iXY, (*this).MinimumSize());
Where iWrappedText is the HBufC in which the iTextArray elements are appended to make a single line of text with the "\n"'s .
Following the above steps gives a multiline custom CEikLabel.
No related wiki articles found