Q更换元件

  • 本文关键字: c++ qt5 qstring
  • 更新时间 :
  • 英文 :


我试着替换QString img=":/images/f0000.png";

如果 pVaule 是 51 img 应该":/images/f0001.png"

如果 pVaule 是 71 img 应该":/images/f0021.png"

但我的结果是pVaule 是 51 img

":/images/f000u0001.png"

pVaule 是 71 img

":/images/f00u0002u0001.png"

如何解决?

你必须使用数字的 ASCII 值...

if(pValue>=50 && pValue<=89)
{
    QString img=":/images/f0000.png";
    if(pValue>=50 && pValue<=59)
    {
        img.data()[12]='0';
        img.data()[13]='0'+char(pValue-50);
    }
    else if(pValue>=60 && pValue<=89)
    {
        img.data()[12]='0'+char(pValue-50)/10;
        img.data()[13]='0'+char(pValue-50)%10;
    }
}

此外,更好的解决方案是:

img.replace(10, 4, QString(4 - QString::number(pValue - 50).length()), '0') + QString::number(pValue - 50));

相关内容

  • 没有找到相关文章

最新更新