こんにちはdata()
QTableViewにデータを入力するときに関数が呼び出されない理由がわかりません
QSqlQueryModelをサブクラス化しました。ヘッダーは次のようなものです。
class TicketModel : public QSqlQueryModel
{
Q_OBJECT
public:
explicit TicketModel(QObject *parent = 0);
QVariant data(const QModelIndex &index, int role);
QVariant headerData(int section, Qt::Orientation orientation, int role) const;
};
メインウィンドウで、モデルをテーブルに設定しました
TicketModel *model = new TicketModel();
QSortFilterProxyModel *proxyModel = new QSortFilterProxyModel(this);
proxyModel->setSourceModel(model);
QSqlQuery *query = _tf->search(1);
model->setQuery(*query);
_ui->dashTable->setModel(proxyModel); // <<<<<<<<<<<<<< I setting model here too, didn't work
_ui->dashTable->setSortingEnabled(true);
_ui->dashTable->horizontalHeader()->setVisible(true);
_ui->dashTable->setSelectionBehavior(QAbstractItemView::SelectRows);
はTicketModel::headerData(...)
呼び出されTicketModel::data(...)
ますが、テーブルの作成時に呼び出されることはありません。なんで?どうすれば呼び出せますか?
単純なことを見落としていたといいのですが、それを理解するために数時間努力してきました。
助けてくれてありがとう!