Я новичок в Qt и действительно нуждаюсь в помощи с проблемой. В настоящее время я работаю над проектом для прохождения практики в школе. Я застреваю, когда я использовал ui-> tableWidget-> setItem (.....), но вещи не показали. Хотя новые строки добавляются с пустыми ячейками.
Мне нужна помощь, чтобы определить проблему и извините за мой плохой английский. Спасибо
void TravelAgency::CreateBooking(char type, double price, string start, string end, long travelID, vector<string> bookingDetails)
{
.
.
.
.
ui->tableWidget->insertRow(ui->tableWidget->rowCount());
int a = ui->tableWidget->rowCount();
QString s = QString::number(idnummer);
ui->tableWidget->setItem(a,0, new QTableWidgetItem(s));
s = QString::number(price);
ui->tableWidget->setItem(a,1, new QTableWidgetItem(s));
s = QString::number(travelID);
ui->tableWidget->setItem(a,2, new QTableWidgetItem(s));
.
.
.
}
В моей Таблице уже есть некоторые Данные, и эти Данные прекрасно показаны с тем же синтаксисом. Я уже отладил и убедитесь, что значения этих переменных верны. Каким-то образом эти данные теперь показывают.
С этим методом все работает:
void TravelAgency::on_actionDatei_Einlesen_triggered()
{
ui->tableWidget->resizeColumnsToContents(); // resize columns to contents
ui->tableWidget->clear(); // clear all Data from Table
ui->tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers); // Read Only
ui->tableWidget->setRowCount(0); // Remove all rows
ui->tableWidget->setHorizontalHeaderLabels(QStringList()<<"Buchungsnummer"<<"Preis"<<"Name"<<"Reise ID"); // set Columns Headers
this->readFile();
for(unsigned int i = 0; i < this->allBookings.size(); i ++){
ui->tableWidget->insertRow(ui->tableWidget->rowCount());
QString q= QString::number(this->allBookings.at(i)->getId());
ui->tableWidget->setItem(static_cast<int>(i),0, new QTableWidgetItem(q));
q = QString::number(this->allBookings.at(i)->getPrice());
ui->tableWidget->setItem(static_cast<int>(i),1, new QTableWidgetItem(q));
q = QString::fromStdString( this->findCustomer(this->findTravel(this->allBookings.at(i)->getTravelID())->getCustomerID())->getName());
ui->tableWidget->setItem(static_cast<int>(i),2, new QTableWidgetItem(q));
q = QString::number(this->allBookings.at(i)->getTravelID());
ui->tableWidget->setItem(static_cast<int>(i),3, new QTableWidgetItem(q));
}
ui->tableWidget->resizeColumnsToContents();
ui->actionDatei_Einlesen->setEnabled(false);
}
в строках 107 и 108 новые добавленные данные не показывались