foggy-mind
2nd June 2009, 11:40
Hi all,
For the first - sorry for my english!!!...;)
OS: WinXP
QT: 4.5.1 (opensource)
Compiler: MinGW
Please help me with sorting numbers & special characters in QTableView.
set data to QStandardItemModel
itemModel = new QStandardItemModel;
int row = 0;
while (query->next())
{
item = new QStandardItem;
itemModel->setItem(row, 0, item);
itemModel->setData(itemModel->index(row,0), Qt::Unchecked, Qt::CheckStateRole);
item = new QStandardItem(tr("%0").arg(query->record().value("ltr_cust_code").toString()));
itemModel->setItem(row, 1, item);
item = new QStandardItem(tr("%0").arg(query->record().value("kk").toString()));
itemModel->setItem(row, 2, item);
//etc........
row++;
}
set QStandardItemModel to QTableView
ui->tlvXMLList2->setModel(xmlModel2);
ui->tlvXMLList2->setSortingEnabled(true);
ui->tlvXMLList2->sortByColumn(1, Qt::AscendingOrder);
First problem:
The 2'nd column has data which is int type, and sorting is something like that [1,10,11,...,2,21,...] I need that numbers will be sorted [1,2,...,10,11,...,21,...]
Second problem:
In 3'rd column data is text type and has lithuanian characters (ĄČĘĖĮÅ ŲŪŽ) (if you don't see the characters set character encoding on your browser Baltic (Windows-1257)). When I'm sorting data using this column then data sorts something like that [A,B,C,D,E,F,G,...,ĄČĘĖĮ,...]. In lithuanian language sorting of text with lithuanian characters is [A,Ą,B,C,Č,D,E,Ę,Ė,F,G,...]
How do everything what I need ??? :confused:
Thank's
For the first - sorry for my english!!!...;)
OS: WinXP
QT: 4.5.1 (opensource)
Compiler: MinGW
Please help me with sorting numbers & special characters in QTableView.
set data to QStandardItemModel
itemModel = new QStandardItemModel;
int row = 0;
while (query->next())
{
item = new QStandardItem;
itemModel->setItem(row, 0, item);
itemModel->setData(itemModel->index(row,0), Qt::Unchecked, Qt::CheckStateRole);
item = new QStandardItem(tr("%0").arg(query->record().value("ltr_cust_code").toString()));
itemModel->setItem(row, 1, item);
item = new QStandardItem(tr("%0").arg(query->record().value("kk").toString()));
itemModel->setItem(row, 2, item);
//etc........
row++;
}
set QStandardItemModel to QTableView
ui->tlvXMLList2->setModel(xmlModel2);
ui->tlvXMLList2->setSortingEnabled(true);
ui->tlvXMLList2->sortByColumn(1, Qt::AscendingOrder);
First problem:
The 2'nd column has data which is int type, and sorting is something like that [1,10,11,...,2,21,...] I need that numbers will be sorted [1,2,...,10,11,...,21,...]
Second problem:
In 3'rd column data is text type and has lithuanian characters (ĄČĘĖĮÅ ŲŪŽ) (if you don't see the characters set character encoding on your browser Baltic (Windows-1257)). When I'm sorting data using this column then data sorts something like that [A,B,C,D,E,F,G,...,ĄČĘĖĮ,...]. In lithuanian language sorting of text with lithuanian characters is [A,Ą,B,C,Č,D,E,Ę,Ė,F,G,...]
How do everything what I need ??? :confused:
Thank's