0

QTableView ウィジェットに問題がありました。ヘッダーを含むウィジェット全体を水平スクロールする必要がありますが、標準スクロールではコンテンツのみをスクロールし、ヘッダーはスクロールしません。

次に、次のように QScrollArea を追加しようとしました (これはすべて QDockWidget にあります):

class matrix : public QScrollArea {
};

コンストラクターで:

QVBoxLayout* layout = new QVBoxLayout(this);

tableView = new QTableView(this);
tableView->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
tableView->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
layout->addWidget(tableView);

this->setLayout(layout);

スクロールバーが表示されません。

(ルールを破っていたらすみません。ここでの最初の質問です。下手な英語で申し訳ありません)

4

1 に答える 1

0

たとえば、レイアウトを削除して、QTableView直接ビューポートとして設定できます。

tableView = new QTableView;
setWidget(tableView);
setWidgetResizable(true);
tableView->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
tableView->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
于 2015-02-18T14:09:17.267 に答える