2012-06-27 3 views
0

Можно создать дубликат:
Concatenating two QStrings with an integerConcatenate СТЛ строка + ИНТ ИНТ ИНТ в QString

я с нетерпением жду, чтобы создать аа строку из 3 Интс и один гр СТЛ ++ строка в QT, как я могу это сделать? кто-нибудь знает? », не может найти что-то, что объясняет эту работу?

это мой код был я создать элементы в lsit, но я хочу, чтобы напечатать все элементы и theyr свойства не только имя:

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 Интс varaibles.

+1

Duplicate: [Объединение двух QStrings с целым числом] (http://stackoverflow.com/q/7011447/594137) –

ответ

5
QString str = QString::fromStdString(stl_string) + " " + 
       QString::number(num1) + " " + 
       QString::number(num2) + " " + 
       QString::number(num1); 

Существует несколько способов сделать это.

+0

спасибо, просто, на самом деле pythonic way: p –

4

Используйте функциональность arg()QString. Вот пример реального мира:

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.

+0

спасибо, оцените его –