PDA

View Full Version : Wrapping text of Qtableviwe cell



vinayptl
24th February 2013, 12:51
I am working with QtableView of Qt. I am facing one problem. I am not able to fix the content in to complete cell . In my case i have fix size of column and rows can be stretched. following is sample code


#include <QApplication>
#include"QStandardItemModel"
#include"QTableView"
#include"QStandardItem"

int main(int argc, char *argv[])
{
QApplication a(argc, argv);

QStandardItemModel *model = new QStandardItemModel(8,3);
QTableView * pQTableView = new QTableView();

for(int r = 0;r<8;r++)
for(int c = 0; c<3; c++)
{
QModelIndex index1= model->index(r,c);

QVariant value("Swaminarayan maharaj");
model->setData(index1, value,Qt :: DisplayRole );


QVariant value1( Qt::AlignCenter);

model->setData(index1, value1,Qt :: TextAlignmentRole );

}

pQTableView->resize(400,400);

pQTableView->setModel(model);

pQTableView->setColumnWidth(0, 100);
pQTableView->setColumnWidth(1, 100);
pQTableView->setColumnWidth(2, 100);
pQTableView->show();

return a.exec();
}

As you can see i wants each cell to have "Swaminarayan maharaj".But Swaminarayan shold be in first line of the cell and "maharaj" in second line. Inshort each cell shold display content in two lines.

Ashkan_s
24th February 2013, 13:53
If your problem is only to display the text in two lines you can use

QVariant value("Swaminarayan\nmaharaj");