【问题标题】:Concatenate stl string+int+int+int in QString [duplicate]在QString中连接stl string+int+int+int [重复]
【发布时间】:2012-06-27 10:01:19
【问题描述】:

可能重复:
Concatenating two QStrings with an integer

我期待在 QT 中从 3 个整数和一个 c++ stl 字符串创建一个字符串,我该怎么做?有人知道吗?找不到可以解释这个过程的东西?

这是我的代码,如果我在 lsit 中创建元素,但我想打印所有元素及其属性,而不仅仅是名称:

void Window::listMovies(){
ui->listMovies->clear();
vector <Movie> all = ctrl->getAllMovies();
for(int i=0; i <(int) all.size();i++){
    QListWidgetItem*item = new QListWidgetItem(
                QString::fromStdString(all[i].getName()),ui->listMovies);
    item->setData(Qt::UserRole,QVariant::fromValue(all[i].getID()));

电影对象有 1 个字符串和 3 个整数变量。

【问题讨论】:

标签: c++ qt qstring


【解决方案1】:
QString str = QString::fromStdString( stl_string ) + " " +
              QString::number( num1 ) + " " +
              QString::number( num2 ) + " " +
              QString::number( num1 );

有几种不同的方法可以做到这一点。

【讨论】:

  • 谢谢,简单,真正的pythonic方式:p
【解决方案2】:

使用QStringarg() 功能。这是一个真实的例子:

QString title("<b>Select Region of Interest:</b> %1.%2 - %3.%4 (%5x%6)");
title = title.arg(roi.x()).arg(roi.y()).arg(roi.right()).arg(roi.bottom())
.arg(roi.width()).arg(roi.height());

我想你明白了。 Find it here in the Qt 4.8 documentation.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-10
    • 1970-01-01
    • 2010-09-16
    相关资源
    最近更新 更多