Qt TableView
# QtのTableViewの最もシンプルな例を紹介します。 QtTableViewはデータをテーブル上に表示するGUIウィジェットです。 主に次の様な手順で使用します。 * TableViewをインスタンスし、用意する * モデルデータオブジェクトを定義する * TableViewの`setModel`メソッドでオブジェクトを渡す ### TableViewのモデルを作成する 今回は配列や構造体を用意せず、単純に振る舞いを見える様にしたサンプルを作りました。 TableViewにデータを表示するにはモデルが必要になります。 モデルを作成するには`QAbstractTableModel`を継承したクラスを定義し`TableView::setModel()`に渡す必要があります。 ``` #include #include class mydata : public QAbstractTableModel { Q_OBJECT public: explicit mydata(QObject *parent = nullptr); virtual ~mydata() override; }; ``` TableViewの`TableView::setModel()`にセットされたオブジェクトはTableViewから次のメソッドが呼び出される為オーバーライドして定義する必要があります。 ### 必要なメソッド * `columnCount()` 列数を返すメソッド * `rowCount()` 行数を返すメソッド * `data()` 要求データを返すメソッド * `headerData()` ヘッダーを返すメソッド ※今回のサンプルは配列や構造体を使わず振る舞いを知る為の例ですので、実用するには`addData()`等オブジェクト内でデータを管理するプログラムが必要になります。 ## メソッドを定義する ### mydata.h ``` #include #include class mydata : public QAbstractTableModel { Q_OBJECT public: explicit mydata(QObject *parent = nullptr); ...