私はすでに以前に質問しましたが、今はもっと質問があります。データベースの接続が変更された後、QSqlTableModel、QTableViewを更新する方法
私はQTableViewとQSQLTableModelを持っています。 QTableViewで
pTableModel->setTable("table_name");
pTableView->setModel(pTableModel);
私はこのためにsetColumnHidden()を使用して、指定された名前の列のみを表示する必要があります。
ここで、DBを変更して、同じ名前の表の指定した列を表示する必要があります。 DBが変更されたテーブルビューとテーブルモデルを通知するより良い方法は何ですか。新しいDB内のテーブルは、列数、行数によって異なる場合がありますが、すべての必要な列があります。
は今、私はテーブルモデルを更新するために、同じテーブル名を指定して、もう一度
pTableModel->setTable("table_name");
を呼び出します。そして、
pTableView->horizontalHeader()->doItemsLayout();
を呼び出して、可能な列数の変更についてのテーブルビューを通知してください。
醜いと思われ、必要なデータがすべて更新されているかどうかわかりません。あなたはもっと良い方法を知っていますか?私の意見で