How to display multiline a listbox?

Login to reply to this topic.
Mon, 2005-12-26 11:03
Joined: 2005-12-26
Forum posts: 6
I want to display a listbox like the style of SMS message list, which can display two lines. That's easy in S60, but how do in UIQ?  Thanks in advance.

BR.
Vachel

Tue, 2006-02-14 20:55
Joined: 2005-11-10
Forum posts: 7
Re: How to display multiline a listbox?
i was wondering if you (or anyone else) had found a solution to this.

thanks.
Wed, 2006-02-15 12:22
Joined: 2005-03-14
Forum posts: 59
Re: How to display multiline a listbox?
Thu, 2006-02-16 09:25
Joined: 2004-06-08
Forum posts: 148
Re: How to display multiline a listbox?
class myCEikColumnListBox : public CEikColumnListBox
I use CEikColumnListBox, but it should be the same.

   MessagesColumnListBoxRect.SetRect(0, 49, 209, 222);   
   MessagesColumnListBox = new (ELeave) myCEikColumnListBox();
   MessagesColumnListBox->ConstructL(this);
   MessagesColumnListBox->View()->SetViewRect(TRect(-1, 48, 210, 224));
   MessagesDrawer=(CColumnListBoxItemDrawer*) MessagesColumnListBox->View()->ItemDrawer();
   MessagesColumnData=(CColumnListBoxData*)MessagesDrawer->ColumnData();
   MessagesColumnData->SetGraphicsColumnL(0,ETrue);
   MessagesColumnData->SetGraphicsColumnL(1,ETrue);   
   MessagesColumnData->SetGraphicsColumnL(2,EFalse);
   
   MessagesColumnData->SetColumnAlignmentL(0,CGraphicsContext::ELeft);
   MessagesColumnData->SetColumnAlignmentL(1,CGraphicsContext::ELeft);
   MessagesColumnData->SetColumnAlignmentL(2,CGraphicsContext::ELeft);
   
   MessagesColumnData->SetColumnWidthPixelL(0,14);   
   MessagesColumnData->SetColumnWidthPixelL(1,28);      
   MessagesColumnData->SetColumnWidthPixelL(2,70);
   MessagesColumnListBox->SetRect(MessagesColumnListBoxRect);
   MessagesColumnListBox->SetBorder(TGulBorder::ENone);   
   MessagesColumnListBox->StopEditingL(ETrue);
   CEikScrollBarFrame* scrollbarFrame = MessagesColumnListBox->CreateScrollBarFrameL();
   // set vertical scroll bars to appear when required
   scrollbarFrame->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff,
                                            CEikScrollBarFrame::EAuto);   
   scrollbarFrame->DrawScrollBarsNow();     
   MessagesColumnListBox->MakeVisible(true);
   
   iMessagesArray = ((CDesC16ArrayFlat *) MessagesColumnListBox->Model()->ItemTextArray());
   iMessagesArray->Reset();            
   iMessagesArray->AppendL(aText);
   // This is the tricky part. For a column list bos aText should be in the correct format.
   //It is documented int UIQ SDK. Ask again if you have problems with it.
   MessagesColumnListBox->HandleItemAdditionL();         
  • Login to reply to this topic.