如何在QT中以纯文本打印向量 intb=0; qz(5); for(int i=0;isetText(str); }

如何在QT中以纯文本打印向量 intb=0; qz(5); for(int i=0;isetText(str); },qt,Qt,我写这段代码是为了用纯文本打印向量,但它只打印我要打印的第一行 全向量 不是:mbox是一种普通的文本编辑 现在还有一个问题 int b=0; QVector<int> z(5); for(int i=0;i<5;i++) z.push_back(i); for(int i=0;i<z.size();i++) { b=z.at(i); QString str=QString::numb

我写这段代码是为了用纯文本打印向量,但它只打印我要打印的第一行 全向量 不是:mbox是一种普通的文本编辑

现在还有一个问题

 int b=0;
     QVector<int> z(5);
     for(int i=0;i<5;i++)
     z.push_back(i);
     for(int i=0;i<z.size();i++)
     {
         b=z.at(i);
         QString str=QString::number(b);

             ui->mbox->setText(str);

     }
qz矢量(5);
对于(int i=0;i 0)
str+=”;
str+=QString::number(z[i]);
}
ui->mbox->setText(str);
}  
在我编写z.size()时的第一个for循环中,我发现Qt捕获了从事件处理程序引发的异常 Qt中不支持事件处理程序的异常。必须 重新实现QApplication::notify()并捕获其中的所有异常

当我写z.size的时候,我得到了10个输出,但正如你们所看到的,z的大小是5,wrog是什么 前5个输出是0,然后其余的是正常的,如01 2 3 4
但是我应该有5个输出。我错了吗?

您正在覆盖向量中每个项目的文本。从如下值构造一个Q字符串:

QVector<int> z(5);
     for(int i=0;i<5;i++)
     z.push_back(i);
         QString str;
         for (int i = 0; i < z.size(); ++i)
         {
             if (i > 0)
                 str += " ";
             str += QString::number(z[i]);
         }

         ui->mbox->setText(str);
 }  
QString-str;
对于(int i=0;i0)
str+=”;
str+=QString::number(z[i]);
}
ui->mbox->setText(str);

如果是关于调试:qDebug()
QString str;
for (int i = 0; i < z.size(); ++i)
{
    if (i > 0)
        str += " ";
    str += QString::number(z[i]);
}

ui->mbox->setText(str);