Qt QString的arg()方法的使用

Qt QString的arg()方法的使用,英文太差了,帮助文档没看懂,百度一下,有需要的朋友可以参考下。

(下面两种方法是比较常用的)


1、QString的arg()方法用于填充字符串中的%1,%2...为给定的参数,如

QString m = tr("%1:%2:%3").arg("12").arg("60").arg("60");    // m = "12:60:60:


2、它还有另外一种重载方法:

QString QString::​arg(int a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char( ' ' )) const

这个方法用于填充字符串中的%1,%2...为给定格式的整形数字,其中第一个参数是要填充的数字,第二个参数为最小宽度,第二个参数为进制,第四个参数为当原始数字长度不足最小宽度时用于填充的字符。

如:

// text = "00123:00456"

QString text = QString("%1:%2").arg(123, 5, 10, QChar('0')).arg(456, 5, 10, QChar('0')); 



参考1:http://www.th7.cn/Program/cp/201508/539912.shtml

http://blog.csdn.net/fighting_youngman/article/details/70611052

1、QString::arg()//用字符串变量参数依次替代字符串中最小数值

 

 

 

Cpp代码   收藏代码
  1. QString i = "iTest";           // current file's number  
  2. QString total = "totalTest";       // number of files to process  
  3. QString fileName = "fileNameTest";    // current file's name  
  4.   
  5. QString status = QString("Processing file %1 of %2: %3")  
  6.                 .arg(i).arg(total).arg(fileName);  
  7.  style="background-color: #ffffff;">     qDebug() << status ;</span>  

 结果就是:"Processing file iTest of totalTest: fileNameTest"

 

 

First, arg(i) replaces %1. Then arg(total) replaces %2. Finally, arg(fileName) replaces %3.

 

 

2、QString::arg ( int a, int fieldWidth = 0, int base = 10, const QChar & fillChar = QLatin1Char( ' ' ) ) const

 

     16进制输出:fieldWidth表示字符宽度,base表示进制,

 

Cpp代码   收藏代码
  1. QString str;  
  2. str = QString("Decimal 63 is %1 in hexadecimal")  
  3.         .arg(63, 0, 16);  
  4. // str == "Decimal 63 is 3f in hexadecimal"  
  5.   
  6. QLocale::setDefault(QLocale(QLocale::English, QLocale::UnitedStates));  
  7. str = QString("%1 %L2 %L3")  
  8.         .arg(12345)  
  9.         .arg(12345)  
  10.         .arg(12345, 0, 16);  
  11. // str == "12345 12,345 3039"  
  12. //16进制显示,就忽略%L3的L  
 

http://qimo601.iteye.com/blog/1420750

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值