有没有改变我添加到CEikRichTextEditor控件中的部分文本而不首先选择文本 - 它在文本上显示绿色选择矩形 - 然后应用文本样式?
以下是我使用的代码,当用户在文本上看到正在运行的绿色选择矩形时,尤其是当我在循环中插入文本时,会给出一种丑陋和草率的样式
CDesCArray* temp = new(ELeave) CDesCArrayFlat(4);
temp->AppendL(_L("First"));
temp->AppendL(_L("Second"));
temp->AppendL(_L("Third"));
temp->AppendL(_L("Fourth"));
TBuf<100>iNumbers;
iNumbers.Copy(_L("Here is the numbers"));
iRichText1->SetTextL(&iNumbers); // iRichText1 is a pointer to CEikRichTextEditor object
for(TInt i = 0; i < temp->Count(); i++)
{
TInt x = iRichText1->Text()->DocumentLength();
iRichText1->RichText()->InsertL(x, (*temp)[i]);
iRichText1->SetSelectionL(x,iRichText1->Text()->DocumentLength());
iRichText1->BoldItalicUnderlineEventL(CEikGlobalTextEditor::EItalic);
TInt line = iRichText1->Text()->DocumentLength();
iRichText1->RichText()->InsertL(line, _L("\f\f"));
}
非常感谢提前。
答案 0 :(得分:1)
您需要对编辑器拥有的CRichText对象进行操作,并在其上应用段落或字符格式(使用ApplyCharFormatL()
/ ApplyParaFormatL()
)。这样就无需选择文本。