-1
我找不到任何可能導致此問題的內容。我有我的UI形式定義的按鈕和TableViews。Qt - 爲什麼QTableView會丟失它的模型()?
然後我做的:
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
if (!createConnection(this))
printf("%s\n", "Unable to set up database!");
QSqlTableModel* model = new QSqlTableModel(this);
model->setTable(tableName);
model->setEditStrategy(QSqlTableModel::OnManualSubmit);
model->select();
table->setModel(model);
// At this point both model and table->model return same thing (proper model).
}
但後來我有:
void MainWindow::on_save_clicked()
{
QTableView* current = (QTableView*) ui->tables->currentWidget();
// current table is correctly found.
QSqlTableModel* model = (QSqlTableModel*) current->model();
// model is null
}
任何線索?
也許'ui-> tables-> currentWidget()'與'table'不一樣。 – drescherjm
@drescherjm該死的,objectName()讓我感到困惑(他們是相同的)。你是對的,一個是容器,另一個是表(在那個容器中)。 – Ernio