[QT c++] presentera arrayens innehåll i en listWidget
Tjena!
Har nu i flera dagar försökt få till en presentation av arrayens innehåll men ser ut som att jag gör fel någonstans.
Eftersom själva koden är skriven i VB så har jag inte "orkat" ändra alla std::strings till QString utan har bara gjort en funktion ToQString(); som omvandlar alla mina variabler till en "stor" QString och returerar den.
QString Diet::toQString()const
{
QString qName(this->name.c_str());
QString qUserName(this->userName.c_str());
QString qDate(this->date.c_str());
QString kcal;
QString carb;
QString protein;
QString lipid;
carb.setNum(this->carb);
protein.setNum((this->protein));
lipid.setNum(this->lipid);
kcal.setNum(this->kcal);
QString str=qUserName;
str.append(" "+qDate+" "+qName+" "+protein+" "+carb+" "+lipid+" "+kcal);
return str;
}
Sen i min handler class (där jag har min pekar array) har jag en funktion som är tänkt ska gå igenom arrayen slot för slot och ropa på funktionen ToQString(); och returera den strängen.
QString DH::toQString(int j)const
{
return this->dh[j]->toQString();
}
Och slutligen i min mainwindow.cpp har jag skrivit följande för att försöka få en utskrift i listWidgeten.
void MainWindow::on_pushButton_3_clicked()
{
DH dh1;
for(int i=0;i<dh1.getNrOfDiets();i++)
{
ui->list2->addItem(dh1.toQString(i));
}
}
allt kompilerar som det ska men när jag trycker på pushButton_3 så händer inget
men om jag ändrar innehållet i pushButton_3 funktionen till följande.
void MainWindow::on_pushButton_3_clicked()
{
Diet d1;
ui->list2->addItem(d1.toQString());
}
så skrivs den "stora" strängen ut i listwidgeten, men med informationen på plats 0 i arrayen.
Vilket bör betyda att konverteringsfunktionen funkar som den ska.
Tacksam för all hjälp!