123,000 ではなく 123,000 など、コンマで区切られた大きな数字を表示したいのですが、これを行うには、並べ替えが期待どおりに機能しない文字列にする必要があります。
1457 次
2 に答える
0
QTableWidgetではなくQTableViewとQStandardItemModelに移動すると、少し簡単になります。これが自分に適しているかどうかはわかりません。
次に、DisplayRoleとは異なるSortRoleを指定できます。このように(Pythonが読みやすいことを願っています-私はPySideを使用しています)
tableView = QtGui.QTableView(self)
tableView.setSortingEnabled(True)
model = QtGui.QStandardItemModel(3,2,self)
model.setSortRole(QtCore.Qt.UserRole)
for r in range(3):
for c in range(2):
item = QtGui.QStandardItem(["1,000","200","100"][r])
item.setData(QtCore.Qt.UserRole,[1000,200,100][r])
model.setItem(r,c,item)
tableView.setModel(model)
setSortRole行をコメントアウトして、2つの動作を確認してください。
于 2012-03-27T14:47:46.067 に答える
0
はい、文字列に変換する必要があります。locale
ユーザー設定に基づいて数値を表示するために 使用します。
this->locale()->toString(value);
于 2012-03-27T10:44:17.683 に答える