weixin_39854473
Yiffy_
采纳率50%
2017-12-13 17:01

QT的tablewidget如何在单元格中显示浮点数

5
已采纳

我现在有一个链表,想要在tablewidget中一列显示出来。
用setItem的话,参数要QTableWidgetItem型的,关键是我的数据是float型,该怎么输进去,有什么办法可以转换一下吗
并且让表格数据按这一列升降序排列的话,如何让一整行跟着一起排序,而不是只有这一列排序。不能用sortbycolumn函数
求大神指教!有点急

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

8条回答

  • u011012932 一去丶二三里 4年前

    需要将 float 转换为 QString:

    float a = 1.234;
    QString str = QString::number(a, 'f', 2);
    

    排序的话建议你还是用 tableView 吧,用起来很方便,需要使用 proxyModel 来实现 lessThan()。

    点赞 1 评论 复制链接分享
  • u011012932 一去丶二三里 4年前

    你需要看接口说明啊!

    QTableWidgetItem *item = new QTableWidgetItem(str);
    tableWidget->setIem(row, column, item); 
    
    点赞 评论 复制链接分享
  • weixin_39854473 Yiffy_ 4年前

    图片说明
    用了你们的方法后是这种情况,该怎么办?

    点赞 评论 复制链接分享
  • weixin_39854473 Yiffy_ 4年前

    用了你们的方法后是这种情况,该怎么办?

    点赞 评论 复制链接分享
  • KQI88 KQI88 4年前

    float a = 1.234;
    QString str = QString::number(a, 'f', 2);
    使用 proxyModel 来实现 lessThan()

    点赞 评论 复制链接分享
  • wjz510781097 wjz510781097 4年前

    float a = 1.234;
    QString str = QString::number(a, 'f', 2);

    点赞 评论 复制链接分享
  • Ride_donkey_sing Ride_donkey_sing 4年前

    float a = 1.234;
    QString str = QString::number(a, 'f', 2);

    点赞 评论 复制链接分享
  • hujinglisson hujinglisson 4年前

    float a = 1.234;
    QString str = QString::number(a, 'f', 2);
    对的

    点赞 评论 复制链接分享